Мне нравится отмеченный редактор Mou, который обладает большой возможностью предварительного просмотра результата рендеринга на лету. Так что мне интересно, есть ли способ сделать sam в vim?
Есть ли vim плагин для предварительного просмотра файла уценки?
Ответ 1
Недавно я обнаружил расширение Chrome, которое позволяет Chrome правильно открывать и отображать файлы разметки: Предварительный просмотр Markdown.
Тогда это просто вопрос сопоставления ключа в Vim, чтобы открыть файл с Chrome. Мой выглядит так:
" Open markdown files with Chrome.
autocmd BufEnter *.md exe 'noremap <F5> :!start C:\Users\tomas\AppData\Local\Google\Chrome\Application\chrome.exe %:p<CR>'
Эта команда должна быть отредактирована, конечно, если в ваших файлах нет расширения ".md", вы хотите, чтобы ваше сопоставление на другом ключе или Chrome находился в другом месте.
Теперь, когда я редактирую файл ".md", я могу нажать <F5>
, чтобы открыть файл в Chrome. Идеальное решение - заставить Chrome автоматически перезагружать каждые несколько секунд, но я не могу найти такое расширение, которое работает для локальных файлов.
Плюсы:
- Возможность нажать кнопку, чтобы просмотреть файл отметки, без необходимости использования каких-либо запущенных серверов или специального кода.
- Работает на всех платформах, поддерживающих Vim и Chrome, что в значительной степени охватывает все платформы.
Минусы:
- Нет автоматического обновления, вам нужно нажать
<F5>
каждый раз, когда вы хотите просмотреть файл. - Отсутствие уклонения от Github.
Ответ 2
Вам повезло - я только что написал плагин vim с предварительным просмотром Markdown в режиме реального времени. Он также использует github Markdown и стили: https://github.com/suan/vim-instant-markdown
Ответ 3
Я использую Marked.app для предварительного просмотра файлов Markdown. И отобразили <leader>p
для предварительного просмотра:
function! s:setupMarkup()
nnoremap <leader>p :silent !open -a Marked.app '%:p'<cr>
endfunction
au BufRead,BufNewFile *.{md,markdown,mdown,mkd,mkdn} call s:setupMarkup()
Если вы не хотите сбросить $4 на Marked.app, вы можете попробовать Hammer.vim. Измените строку на:
map <buffer> <leader>p :Hammer<CR>
Ответ 4
Фактически вы можете использовать pandoc для компиляции в формат документа по вашему выбору и просмотр его с помощью внешней команды по умолчанию. Например, мне нравится просматривать его в формате pdf, и я использую следующую настройку на Ubuntu.
" pandoc , markdown
command! -nargs=* RunSilent
\ | execute ':silent !'.'<args>'
\ | execute ':redraw!'
nmap <Leader>pc :RunSilent pandoc -o /tmp/vim-pandoc-out.pdf %<CR>
nmap <Leader>pp :RunSilent gnome-open /tmp/vim-pandoc-out.pdf<CR>
Я скомпилирую документ с помощью ,pc
и превью, используя ,pp
. Поскольку в ubuntu evince
используется средство просмотра по умолчанию и автоматически загружает измененные файлы. В итоге вы делаете только ,pc
, чтобы ваши изменения отражались.
PS: У меня есть Лидер, сопоставленный с,
Ответ 5
Нет, есть несколько плагинов Vim для подсветки синтаксиса, фрагментов и т.д., но Vim отображает только текст и текст, поэтому у вас не может быть Markdown (или любой другой вид) предварительный просмотр в Vim.
Если вас интересует предварительный просмотр в реальном времени, возможно, MarkdownPad будет лучше соответствовать вашим потребностям.
Ответ 6
Добавление в ответ @Codemonkey, если вы используете OSX, вы можете использовать следующее в вашем файле .vimrc.
" Open markdown files with Chrome.
autocmd BufEnter *.md exe 'noremap <F5> :!open -a "Google Chrome.app" %:p<CR>'
Ответ 7
Вот простой плагин vim для просмотра Markdown в Chrome - он не требует рубинов или чего-то необычного и обновит предварительный просмотр при записи в буфер vim (его также можно активировать с помощью горячей клавиши)
Кроме того, предварительный просмотр происходит в фоновом режиме, поэтому вам никогда не придется покидать vim.
Ответ 8
У меня есть функция в моем .vim каталоге:
function! markdown#preview()
silent update
let output_name = tempname() . '.html'
let file_header = ['<html>', '<head>',
\ '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">',
\ '<title>'.expand('%:p').'</title>',
\ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssreset/reset-min.css">',
\ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssbase/base-min.css">',
\ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssfonts/fonts-min.css">',
\ '<style>body{padding:20px;}div#container{background-color:#F2F2F2;padding:0 20px;margin:0px;border:solid #D0D0D0 1px;}</style>',
\ '</head>', '<body>', '<div id="container">']
call writefile(file_header, output_name)
silent exec '!markdown "' . expand('%:p') . '" >> "' . output_name . '"'
silent exec '!echo "</div></body></html>" >> "' . output_name . '"'
silent exec '!sensible-browser "' . output_name . '" &'
endfunction
С этим я также имею следующее отображение:
inoremap <buffer> <F7> <ESC>:call markdown#preview()<CR>
nmap <buffer> <F7> :call markdown#preview()<CR>
Это не идеально, и это не в реальном времени, но это достаточно хорошо для моих ограниченных потребностей.
Ответ 9
Я наткнулся на хороший плагин, который отлично работал из коробки https://github.com/waylan/vim-markdown-extra-preview
Ответ 10
Я не думаю, что предварительная уценка в vim - хорошая идея.
Но вы можете преобразовать свою уценку в HTML, просто набрав %!markdown
, предположительно, у вас установлена уценка. Затем сохраните этот файл и откройте его в браузере.