Что: 355880e41d4bf3b49d5fd3fe49f245f5343840b1 Когда: 2022-07-17 10:49:14+03:00 ------------------------------------------------------------------------ Темы: tip vim ------------------------------------------------------------------------ Вызов калькулятора в Vim https://old.reddit.com/r/vim/comments/9421bm/whats_your_favourite_equalprg_hack/ http://www.git.stargrave.org/?p=dotfiles.git;a=blob;f=dc/.dc Пишу тут код, где нужно прикинуть всякие простые вычисления, типа offset-ов, длин и тому подобного. В самом же коде я делаю наброски и вычисления, но нужно и что-то посчитать. Не видя никаких статей, я самостоятельно додумался до вызова калькулятора внешнего: пишу на отдельной строке: 6 304 13 45 72 36 lSx 18 12+ 5*+p выделяю ("V") и вызываю калькулятор ":!zc" Это я всякие размеры полей пакета считал, строчка оставшаяся в истории редактора. Про ссылку на reddit вспомнил просто потому что недавно, когда что-то искал по Vim, напоролся на неё. Но из неё узнал что вместо визуального выделения параграфа, можно делать "!}zc" -- куда короче и не загрязняет "историю" визуальных выделений. Всё равно, даже в простых вещах, Vim не перестаёт удивлять маленькими полезностями. В качестве калькулятора уже который год использую обёртку над dc RPN калькулятором (d65882c3c5decb9e2216d7a8de98c1d422c2c42d). $ cat =zc #!/bin/sh exec rlwrap \ --history-filename /tmp/.dc_history \ --substitute-prompt "> " \ --prompt-colour=red \ dc -f ~/.dc -f /dev/stdin Где ~/.dc содержит настройку точности и пока только пару скриптов: * загруженный в "S" регистр суммирует всё что есть в стэке. Это я использую постоянно, без надобности писать кучу "+" * загруженный в "L" регистр вычисляет натуральный логарифм. А для преобразования в другие основания применять формулу из школы, типа: 1000lLx 10lLx /p Вызов zc у меня есть и в tmux по быстрому нажатию prefix+t+c, но когда чисел много, и их надо брать из кучи других мест, то уже не попереключаешься между сессиями tmux удобно. ------------------------------------------------------------------------ оставить комментарий: mailto:comment@blog.stargrave.org?subject=Re:%20%D0%92%D1%8B%D0%B7%D0%BE%D0%B2%20%D0%BA%D0%B0%D0%BB%D1%8C%D0%BA%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80%D0%B0%20%D0%B2%20Vim%20%28355880e41d4bf3b49d5fd3fe49f245f5343840b1%29 ------------------------------------------------------------------------ Сгенерирован: SGBlog 0.34.0