Se você quiser abrir o arquivo inteiro (o que requer), mas mostrar apenas parte dele na janela do editor, use narrowing . Selecione a parte do buffer em que você deseja trabalhar e pressione C-x n n ( narrow-to-region ). Diga “sim” se você receber um aviso sobre um comando desativado. Pressione C-x n w ( widen ) para ver o buffer inteiro novamente. Se você salvar o buffer, o arquivo completo é selecionado: todos os dados ainda estão lá, estreitando apenas restringe o que você vê.
Se você quiser ver uma parte de um arquivo, você pode inseri-lo no buffer atual com shell-command com um argumento de prefixo ( M-1 M-! ); execute o comando apropriado para extrair as linhas desejadas , eg <huge.txt tail -n +57890001 | head -n 11 .
Há também uma função Lisp insert-file-contents o que pode levar um intervalo de bytes. Você pode invocá-lo com M-: ( eval-expression ):
(insert-file-contents "huge.txt" nil 456789000 456791000)
Observe que você pode entrar no limite de tamanho inteiro (dependente de versão e plataforma, verificar o valor de most-positive-fixnum ).
Em teoria, seria possível escrever um modo Emacs que carregasse e salvasse partes de arquivos de forma transparente, conforme necessário (embora o limite de tamanhos inteiros tornasse impossível o uso de deslocamentos reais de arquivos em máquinas de 32 bits). O único esforço nessa direção que eu conheço é VLF (link GitHub aqui ).