2

Решено, смотрите мой ответ. Тем не менее, я считаю, что этот вопрос по-прежнему хороший опыт обучения для других новичков, как я

Так что я работаю над этим проектом, но я работаю над ним как дома, так и на работе.

Проект написан на python .

Проблема, с которой я сталкиваюсь, заключается в том, что на работе я использую notepadd++ на Windows.

Настройки моей вкладки для notepad++ следующие:

  • таб = 4 столбца, но
    • НЕ расширяйте вкладку до фактически = 4 пробела

Затем я отправляю файлы себе по электронной почте и скачиваю их дома. Когда я открываю файлы в vim на моем компьютере с Linux, появляется такое же количество вкладок, но все вкладки занимают 8 столбцов, фактически не заменяемых пробелами.

Я не знаю, почему это происходит, но есть ли какая-нибудь команда, которую я могу использовать для переформатирования файлов в соответствии с моим .vimrc?

gg=G вроде работает, но не совсем справляется

Мои настройки следующие:

"se t_Co=256   
syntax enable

set mouse=a  
set tabstop=4  
set softtabstop=4  
set shiftwidth=4   
"set expandtab     
set number   
set showcmd   
set cursorline     
set showmatch    

execute pathogen#infect()    
filetype plugin indent on

"folding settings  
set foldmethod=indent         
set foldnestmax=10           
set nofoldenable              
set foldlevel=1               

РЕДАКТИРОВАТЬ: все, что он делает под капотом, чтобы попытаться преобразовать его, кажется, что он не делает это рекурсивно или что-то. Это сложно объяснить, поэтому позвольте мне сделать несколько снимков экрана.

Вот часть файла, который я только что открыл в vim, неотредактированный:

Вы можете видеть, как вкладки 8 столбцов, но они должны быть 4

Теперь я набираю gg = G, чтобы "исправить" отступ. Для первого метода / первого оператора в этом методе он работал как предполагалось. Но все заявления после него оставлены в покое

Это также только первый МЕТОД, который исправляется, но для всех других операторов compund (для циклов, блоков try и т.д.) Этот шаблон первой строки исправляется, но больше ничего не исправляется, похоже, что алгоритм не исправляется. повторяющееся. (или повторяющийся, что угодно)

2 ответа2

1

Чтобы вкладки были 4 столбцами в vim, используйте:

set shiftwidth=4 tabstop=4

Если, в частности, вам нужны только эти настройки вкладок при редактировании файлов Python, то поместите в ваш ~/.vimrc следующее:

autocmd BufNewFile,BufRead *.py set tabstop=4 shiftwidth=4
0

Я понял это, как некоторые из вас предположили, это не захватило правильный источник, я подозреваю, что это потому, что это файл DOS. исправлено, набрав:

:source ~/.vimrc 

в командной строке ed

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .