Форум сайта python.su
jjayКнопочки, а точнее панели инструментов, можно убрать (в Wing и SlickEdit (SConstruct - это имя файла :) )), но меня и так устраивает,- размер моего монитора позволяет (ваш монитор, похоже, тоже не 14 дюймов). А вот на мой вопрос про русскую раскладку и горячие клавиши vim'ерам, видимо, сказать нечего, я прав?
@ilya1:
Почти везде кнопочки в хидере + меню. Wings и SConstruct - вкладки.
Понятно, что это уже не эклипс/нетбинс, но придраться все равно есть к чему.
Можно проще.
Офлайн
Что за ШГ в емаксе?)
Офлайн
ilya1Помогает.
А вот на мой вопрос про русскую раскладку и горячие клавиши vim'ерам, видимо, сказать нечего, я прав?
set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯЭХЪ;ABCDEFGHIJKLMNOPQRSTUVWXYZ\"{},фисвуапршолдьтщзйкыегмцчняхъ;abcdefghijklmnopqrstuvwxyz[]
Офлайн
Как это не прискорбно, нормально решить вопрос с русской раскладной в виме, не представляется возможным (есть несколько костылей, в т.ч. упомянутый jjay но они не полноценны) Однако из вима можно сделать очень даже годный редактор кода, с замашками на IDE (неплохой автокомплит и навигация по коду с помощью rope, есть так же отличный плагин pyflackes подсвечивающий ошибки на лету). Но не более (например годного кросплатформенного плагина для дебага я так и не нашёл). Чем я и пользуюсь (кому интересно мой vimrc ) Всё конечно глубокое ИМХО.
Отредактировано (Сен. 15, 2010 21:19:15)
Офлайн
jjayНе работает, но уже есть прогресс. Вот такой .vimrc на Ctrl-Ы (=Ctrl-S в русской раскладке) вместо сохранения удаляет всю строку до начала строки (большего эффекта достичь не смог):
Помогает.set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯЭХЪ;ABCDEFGHIJKLMNOPQRSTUVWXYZ\"{},фисвуапршолдьтщзйкыегмцчняхъ;abcdefghijklmnopqrstuvwxyz[]
set langmap=ы;S
noremap <C-S> :update<CR>
ZubchickДефолтные, в убунте. Я не сильно им пользусь; так, периодически запускаю поэкспериментировать.
Что за ШГ в емаксе?)
Отредактировано (Сен. 15, 2010 21:40:39)
Офлайн
А причём тут “Ctrl-S” и vim? Не ищите аналоги. Ищите способы сделать требуемое.
Не делайте из вима блокнот. В виме надо набрать :w и если вы не способны к этому привыкнуть – значит vim-style не для вас.
Офлайн
ilya11. set langmap=ы;s (учитывай регистр)
Не работает, но уже есть прогресс. Вот такой .vimrc на Ctrl-Ы (=Ctrl-S в русской раскладке) вместо сохранения удаляет всю строку до начала строки (большего эффекта достичь не смог):
Код:
set langmap=ы;S
noremap <C-S> :update<CR>
Помогайте, эта эпическая нелюбовь вима к русскому меня достала.
set langmap=a;f
noremap <C-f> :update<CR>
imap <C-f> <esc>:update<CR>a
" set characters you want to fix in insert mode
let g:langmap_fix_chars = "qwertyuop[]asdfghjkl;'zxcvbnm,./"
function! DoLangMapFix()
" get current langmap
redir => l:lmstr
set langmap
redir END
" create original maplist and locale maplist
let l:lmstr = substitute(l:lmstr, "\n", "","g")
let l:lmstr = substitute(lmstr, " langmap=", "", "")
let l:langsets = split(lmstr, ',')
let l:corig = []
let l:clocal = []
for langset in l:langsets
let [ l:local, l:orig ] = split(langset, ';')
for char in split(orig, '\zs')
let l:corig += [char]
endfor
for char in split(local, '\zs')
let l:clocal += [char]
endfor
endfor
" create list of current imaps
let l:index = 0
redir => l:imapss
silent imap
redir END
let l:imaps = split(l:imapss, '\n')
while index < len(l:imaps)
let l:imaps[l:index] = substitute(l:imaps[l:index], '\n', '', 'g')
let l:imaps[l:index] = substitute(l:imaps[l:index], '^i ', '', '')
let l:index += 1
endwhile
let l:index = 0
" fix locale characters
for char in l:corig
" fix only chars we want
if match(g:langmap_fix_chars, char) > -1
" check is imap for char avaible
let l:foundmap = ''
for fmap in l:imaps
if match(fmap, '^<C-' . toupper(char) . '>', '') > -1
let l:foundmap = fmap
break
endif
endfor
" won't fix
if len(l:foundmap) == 0
let l:index += 1
cont
endif
" here we are
let l:lchar = l:clocal[l:index]
let l:mapping = substitute(l:foundmap, '^<C-.>', '<C-' . l:lchar . '>', '')
let l:cmd = 'imap ' . l:mapping
silent exec l:cmd
endif
let l:index += 1
endfor
endfunction
silent call DoLangMapFix()
Офлайн
гики блин =)
Geany с плагинами - мое все.
Офлайн
jjayЗаработало! Но только в терминальном режиме; в gvim'е не пашет (печаль).
У меня работает так (<C-s> вообще в gterm отказывается работать):Что бы работало в imode можно написать что-то подобное в ~/.vim/plugins/langmap.fixset langmap=a;f
noremap <C-f> :update<CR>
imap <C-f> <esc>:update<CR>a
Остается один вопрос - зачем менять раскладку с английской когда пишешь код? ОоДык не только код пишу, но и документацию.
ZZZИ как :w поможет решить проблему, умник? Считаем кол-во нажатий для сохранения файла (для простоты переход в модальный режим опустим):
А причём тут “Ctrl-S” и vim? Не ищите аналоги. Ищите способы сделать требуемое.
Не делайте из вима блокнот. В виме надо набрать :w и если вы не способны к этому привыкнуть – значит vim-style не для вас.
Офлайн
ilya1Какую проблему, умник? Это всё настолько привычно и быстро, что не замечаешь, как руки сами всё делают.
И как :w поможет решить проблему, умник?
Офлайн