"===================================================================== " cream-menu-file.vim " " Cream -- An easy-to-use configuration of the famous Vim text editor " [ http://cream.sourceforge.net ] Copyright (C) 2001-2007 Steve Hall " " License: " This program is free software; you can redistribute it and/or modify " it under the terms of the GNU General Public License as published by " the Free Software Foundation; either version 2 of the License, or " (at your option) any later version. " [ http://www.gnu.org/licenses/gpl.html ] " " This program is distributed in the hope that it will be useful, but " WITHOUT ANY WARRANTY; without even the implied warranty of " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU " General Public License for more details. " " You should have received a copy of the GNU General Public License " along with this program; if not, write to the Free Software " Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA " 02111-1307, USA. " " Note: Recent File menu is called at bottom. " function! Cream_menu_load_file() " This is functionalized so that buffers can restore it after deleting the File menu for each refresh. anoremenu 10.101 &File.&NewCtrl+N :call Cream_file_new() anoremenu 10.102 &File.&Open\.\.\. :call Cream_file_open() vmenu 10.103 &File.&Open\ (selection)Ctrl+Enter :call Cream_file_open_undercursor("v") anoremenu 10.104 &File.&Open\ (Read-Only)\.\.\. :call Cream_file_open_readonly() anoremenu 10.105 &File.&Close\ File :call Cream_close() anoremenu 10.106 &File.C&lose\ All\ Files :call Cream_close_all() anoremenu 10.107 &File.-SEP1- anoremenu 10.108 &File.&SaveCtrl+S :call Cream_save() anoremenu 10.109 &File.Save\ &As\.\.\. :call Cream_saveas() anoremenu 10.110 &File.Sa&ve\ All\.\.\. :call Cream_saveall() "if has("diff") " anoremenu 10.400 &File.-SEP2- : " anoremenu 10.410 &File.Split\ &Diff\ with\.\.\. :browse vert diffsplit " anoremenu 10.420 &File.Split\ Patched\ &By\.\.\. :browse vert diffpatch "endif " support for :hardcopy exists if has("printer") " Print anoremenu 10.500 &File.-SEP10500- imenu 10.510 &File.&Print\.\.\. :call Cream_print("i") vmenu 10.510 &File.&Print\.\.\. :call Cream_print("v") " Print setup {{{1 " &printoptions only supported in 6.2+ if version >= 602 imenu 10.521 &File.Prin&t\ Setup.Paper\ Size.&Statement\ (5-1/2\ x\ 8-1/2) :call Cream_print_set("i", "paper:statement") vmenu 10.521 &File.Prin&t\ Setup.Paper\ Size.&Statement\ (5-1/2\ x\ 8-1/2) :call Cream_print_set("v", "paper:statement") imenu 10.522 &File.Prin&t\ Setup.Paper\ Size.&Letter\ (8-1/2\ x\ 11) :call Cream_print_set("i", "paper:letter") vmenu 10.522 &File.Prin&t\ Setup.Paper\ Size.&Letter\ (8-1/2\ x\ 11) :call Cream_print_set("v", "paper:letter") imenu 10.523 &File.Prin&t\ Setup.Paper\ Size.&Legal\ (11\ x\ 14) :call Cream_print_set("i", "paper:letter") vmenu 10.523 &File.Prin&t\ Setup.Paper\ Size.&Legal\ (11\ x\ 14) :call Cream_print_set("v", "paper:letter") imenu 10.524 &File.Prin&t\ Setup.Paper\ Size.&Ledger\ (17\ x\ 11) :call Cream_print_set("i", "paper:ledger") vmenu 10.524 &File.Prin&t\ Setup.Paper\ Size.&Ledger\ (17\ x\ 11) :call Cream_print_set("v", "paper:ledger") imenu 10.525 &File.Prin&t\ Setup.Paper\ Size.&A3 :call Cream_print_set("i", "paper:A3") vmenu 10.525 &File.Prin&t\ Setup.Paper\ Size.&A3 :call Cream_print_set("v", "paper:A3") imenu 10.526 &File.Prin&t\ Setup.Paper\ Size.&A4 :call Cream_print_set("i", "paper:A4") vmenu 10.526 &File.Prin&t\ Setup.Paper\ Size.&A4 :call Cream_print_set("v", "paper:A4") imenu 10.527 &File.Prin&t\ Setup.Paper\ Size.&A5 :call Cream_print_set("i", "paper:A5") vmenu 10.527 &File.Prin&t\ Setup.Paper\ Size.&A5 :call Cream_print_set("v", "paper:A5") imenu 10.528 &File.Prin&t\ Setup.Paper\ Size.&B4 :call Cream_print_set("i", "paper:B4") vmenu 10.528 &File.Prin&t\ Setup.Paper\ Size.&B4 :call Cream_print_set("v", "paper:B4") imenu 10.529 &File.Prin&t\ Setup.Paper\ Size.&B5 :call Cream_print_set("i", "paper:B5") vmenu 10.529 &File.Prin&t\ Setup.Paper\ Size.&B5 :call Cream_print_set("v", "paper:B5") imenu 10.541 &File.Prin&t\ Setup.Paper\ Orientation.&Portrait :call Cream_print_set("i", "portrait:y") vmenu 10.541 &File.Prin&t\ Setup.Paper\ Orientation.&Portrait :call Cream_print_set("v", "portrait:y") imenu 10.542 &File.Prin&t\ Setup.Paper\ Orientation.&Landscape :call Cream_print_set("i", "portrait:n") vmenu 10.542 &File.Prin&t\ Setup.Paper\ Orientation.&Landscape :call Cream_print_set("v", "portrait:n") imenu 10.553 &File.Prin&t\ Setup.Margins.&Top\.\.\. :call Cream_print_set_margin_top("i") vmenu 10.553 &File.Prin&t\ Setup.Margins.&Top\.\.\. :call Cream_print_set_margin_top("v") imenu 10.551 &File.Prin&t\ Setup.Margins.&Left\.\.\. :call Cream_print_set_margin_left("i") vmenu 10.551 &File.Prin&t\ Setup.Margins.&Left\.\.\. :call Cream_print_set_margin_left("v") imenu 10.552 &File.Prin&t\ Setup.Margins.&Right\.\.\. :call Cream_print_set_margin_right("i") vmenu 10.552 &File.Prin&t\ Setup.Margins.&Right\.\.\. :call Cream_print_set_margin_right("v") imenu 10.554 &File.Prin&t\ Setup.Margins.&Bottom\.\.\. :call Cream_print_set_margin_bottom("i") vmenu 10.554 &File.Prin&t\ Setup.Margins.&Bottom\.\.\. :call Cream_print_set_margin_bottom("v") imenu 10.561 &File.Prin&t\ Setup.Header.Height\.\.\. :call Cream_print_set_header("i") vmenu 10.561 &File.Prin&t\ Setup.Header.Height\.\.\. :call Cream_print_set_header("v") endif imenu 10.562 &File.Prin&t\ Setup.Header.Text\.\.\. :call Cream_print_set_headertext("i") vmenu 10.562 &File.Prin&t\ Setup.Header.Text\.\.\. :call Cream_print_set_headertext("v") anoremenu 10.565 &File.Prin&t\ Setup.--Sep10565-- imenu 10.565 &File.Prin&t\ Setup.Syntax\ Highlighting\.\.\. :call Cream_print_set_syntax("i") vmenu 10.565 &File.Prin&t\ Setup.Syntax\ Highlighting\.\.\. :call Cream_print_set_syntax("v") imenu 10.566 &File.Prin&t\ Setup.Line\ Numbering\.\.\. :call Cream_print_set_number("i") vmenu 10.566 &File.Prin&t\ Setup.Line\ Numbering\.\.\. :call Cream_print_set_number("v") imenu 10.567 &File.Prin&t\ Setup.Wrap\ at\ Margins\.\.\. :call Cream_print_set_wrap("i") vmenu 10.567 &File.Prin&t\ Setup.Wrap\ at\ Margins\.\.\. :call Cream_print_set_wrap("v") anoremenu 10.600 &File.Prin&t\ Setup.--Sep600-- imenu 10.601 &File.Prin&t\ Setup.Font\.\.\. :call Cream_print_set_font("i") vmenu 10.602 &File.Prin&t\ Setup.Font\.\.\. :call Cream_print_set_font("v") " print encoding (10.600s) {{{2 " &printencoding only supported in Vim 6.2+ if version >= 602 " (swiped from file encoding menu) anoremenu 10.603 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UTF-8)[utf-8\ --\ 32\ bit\ UTF-8\ encoded\ Unicode\ (ISO/IEC\ 10646-1)] :call Cream_print_set("i", "encoding", "utf-8") anoremenu 10.604 &File.Prin&t\ Setup.&Encoding.Unicode.-Sep10604- anoremenu 10.605 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UCS-2)[ucs-2\ --\ 16\ bit\ UCS-2\ encoded\ Unicode\ (ISO/IEC\ 10646-1)] :call Cream_print_set("i", "encoding", "ucs-2") anoremenu 10.606 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UCS-2le)[ucs-2le\ --\ like\ ucs-2,\ little\ endian] :call Cream_print_set("i", "encoding", "ucs-2le") anoremenu 10.607 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UTF-16)[utf-16\ --\ UCS-2\ extended\ with\ double-words\ for\ more\ characters] :call Cream_print_set("i", "encoding", "utf-16") anoremenu 10.608 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UTF-16le)[utf-16le\ --\ like\ UTF-16,\ little\ endian] :call Cream_print_set("i", "encoding", "utf-16le") anoremenu 10.609 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UCS-4)[ucs-4\ --\ 32\ bit\ UCS-4\ encoded\ Unicode\ (ISO/IEC\ 10646-1)] :call Cream_print_set("i", "encoding", "ucs-4") anoremenu 10.610 &File.Prin&t\ Setup.&Encoding.Unicode.Unicode\ (UCS-4le)[ucs-4le\ --\ like\ ucs-4,\ little\ endian] :call Cream_print_set("i", "encoding", "ucs-4le") anoremenu 10.611 &File.Prin&t\ Setup.&Encoding.-Sep10611- anoremenu 10.612 &File.Prin&t\ Setup.&Encoding.Western\ European.Western\ (ISO-8859-1)[latin1/ANSI\ --\ 8-bit\ characters] :call Cream_print_set("i", "encoding", "latin1") anoremenu 10.613 &File.Prin&t\ Setup.&Encoding.Western\ European.Western\ (ISO-8859-15)[iso-8859-15\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-15") anoremenu 10.614 &File.Prin&t\ Setup.&Encoding.Western\ European.Western\ (Windows-1252)[8bit-cp1252\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1252") anoremenu 10.615 &File.Prin&t\ Setup.&Encoding.Western\ European.Celtic\ (ISO-8859-14)[iso-8859-14\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-14") anoremenu 10.616 &File.Prin&t\ Setup.&Encoding.Western\ European.Greek\ (ISO-8859-7)[iso-8859-7\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-7") anoremenu 10.617 &File.Prin&t\ Setup.&Encoding.Western\ European.Greek\ (Windows-1253)[8bit-cp1253\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1253") anoremenu 10.618 &File.Prin&t\ Setup.&Encoding.Western\ European.Nordic\ (ISO-8859-10)[iso-8859-10\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-10") anoremenu 10.619 &File.Prin&t\ Setup.&Encoding.Western\ European.South\ European\ (ISO-8859-3)[iso-8859-3\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-3") anoremenu 10.620 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Baltic\ (ISO-8859-4)[iso-8859-4\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-4") anoremenu 10.621 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Baltic\ (ISO-8859-13)[iso-8859-13\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-13") anoremenu 10.622 &File.Prin&t\ Setup.&Encoding.Western\ European.Baltic\ (Windows-1257)[8bit-cp1257\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1257") anoremenu 10.623 &File.Prin&t\ Setup.&Encoding.Western\ European.Central\ European\ (Windows-1250)[8bit-cp1250\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1250") anoremenu 10.624 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Cyrillic\ (ISO-8859-5)[iso-8859-5\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-5") anoremenu 10.625 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Cyrillic\ (KO18-R)[koi8-r\ --\ Russian] :call Cream_print_set("i", "encoding", "koi8-r") anoremenu 10.626 &File.Prin&t\ Setup.&Encoding.Western\ European.Cyrillic\ (Windows-1251)[8bit-cp1251\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1251") anoremenu 10.627 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Cyrillic/Ukrainian\ (KO18-U)[koi8-u\ --\ Ukrainian] :call Cream_print_set("i", "encoding", "koi8-u") anoremenu 10.628 &File.Prin&t\ Setup.&Encoding.Eastern\ European.Romanian\ (ISO-8859-16)[iso-8859-16\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-16") anoremenu 10.629 &File.Prin&t\ Setup.&Encoding.East\ Asian.Simplified\ Chinese\ (ISO-2022-CN)[chinese\ --\ simplified\ Chinese:\ on\ Unix\ "euc-cn",\ on\ MS-Windows\ cp936] :call Cream_print_set("i", "encoding", "chinese") anoremenu 10.630 &File.Prin&t\ Setup.&Encoding.East\ Asian.Chinese\ Traditional\ (Big5)[big5\ --\ traditional\ Chinese] :call Cream_print_set("i", "encoding", "big5") anoremenu 10.631 &File.Prin&t\ Setup.&Encoding.East\ Asian.Chinese\ Traditional\ (EUC-TW)[taiwan\ --\ on\ Unix\ "euc-tw",\ on\ MS-Windows\ cp950] :call Cream_print_set("i", "encoding", "taiwan") anoremenu 10.632 &File.Prin&t\ Setup.&Encoding.East\ Asian.Japanese[japan\ --\ on\ Unix\ "euc-jp",\ on\ MS-Windows\ cp932] :call Cream_print_set("i", "encoding", "japan") anoremenu 10.633 &File.Prin&t\ Setup.&Encoding.East\ Asian.Korean[korea\ --\ on\ Unix\ "euc-kr",\ on\ MS-Windows\ cp949] :call Cream_print_set("i", "encoding", "korea") anoremenu 10.634 &File.Prin&t\ Setup.&Encoding.SE\ and\ SW\ Asian.Turkish\ (ISO-8859-9)[iso-8859-6\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-9") anoremenu 10.635 &File.Prin&t\ Setup.&Encoding.Western\ European.Turkish\ (Windows-1254)[8bit-cp1254\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1254") anoremenu 10.636 &File.Prin&t\ Setup.&Encoding.Western\ European.Vietnamese\ (Windows-1258)[8bit-cp1258\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1258") anoremenu 10.637 &File.Prin&t\ Setup.&Encoding.Middle\ Eastern.Arabic\ (ISO-8859-6)[iso-8859-6\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-6") anoremenu 10.638 &File.Prin&t\ Setup.&Encoding.Western\ European.Arabic\ (Windows-1256)[8bit-cp1256\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1256") anoremenu 10.639 &File.Prin&t\ Setup.&Encoding.Western\ European.Hebrew\ (Windows-1255)[8bit-cp1255\ --\ MS-Windows\ double-byte\ codepage] :call Cream_print_set("i", "encoding", "8bit-cp1255") anoremenu 10.640 &File.Prin&t\ Setup.&Encoding.Middle\ Eastern.Hebrew\ Visual\ (ISO-8859-8)[iso-8859-8\ --\ ISO_8859\ variant] :call Cream_print_set("i", "encoding", "iso-8859-8") endif " 2}}} imenu 10.650 &File.Prin&t\ Setup.Obey\ Formfeeds\.\.\. :call Cream_print_set_formfeed("i") vmenu 10.651 &File.Prin&t\ Setup.Obey\ Formfeeds\.\.\. :call Cream_print_set_formfeed("v") anoremenu 10.660 &File.Prin&t\ Setup.--Sep10660-- imenu 10.661 &File.Prin&t\ Setup.Collate\.\.\. :call Cream_print_set_collate("i") vmenu 10.662 &File.Prin&t\ Setup.Collate\.\.\. :call Cream_print_set_collate("v") imenu 10.670 &File.Prin&t\ Setup.Duplex\.\.\. :call Cream_print_set_duplex("i") vmenu 10.671 &File.Prin&t\ Setup.Duplex\.\.\. :call Cream_print_set_duplex("v") imenu 10.680 &File.Prin&t\ Setup.Job\ Split\ Copies\.\.\. :call Cream_print_set_jobsplit("i") vmenu 10.681 &File.Prin&t\ Setup.Job\ Split\ Copies\.\.\. :call Cream_print_set_jobsplit("v") anoremenu 10.690 &File.Prin&t\ Setup.--Sep10690-- " we don't need this functionality (READ :help 'printdevice) "imenu 10.691 &File.Prin&t\ Setup.Device\.\.\. :call Cream_print_set_device("i") "vmenu 10.692 &File.Prin&t\ Setup.Device\.\.\. :call Cream_print_set_device("v") imenu 10.693 &File.Prin&t\ Setup.Printer\ Expression\.\.\. :call Cream_print_set_expr("i") vmenu 10.694 &File.Prin&t\ Setup.Printer\ Expression\.\.\. :call Cream_print_set_expr("v") " 1}}} elseif has("unix") anoremenu 10.500 &File.-SEP10500- anoremenu 10.510 &File.&Print\.\.\. :w !lpr vunmenu &File.&Print\.\.\. vmenu &File.&Print\.\.\. :w !lpr elseif has("vms") anoremenu 10.500 &File.-SEP10500- anoremenu 10.510 &File.&Print\.\.\. :call VMSPrint(":") vunmenu &File.&Print\.\.\. vmenu &File.&Print\.\.\. :call VMSPrint(":'<,'>") if !exists("*VMSPrint") function VMSPrint(range) let mod_save = &mode let ttt = tempname() execute a:range . "w! " . ttt let &mode = mod_save execute "!print/delete " . ttt endfunction endif endif anoremenu 10.800 &File.-SEP4- anoremenu 10.801 &File.E&xitCtrl+F4 :call Cream_exit() anoremenu 10.821 &File.Save\ All\ and\ &Exit :call Cream_save_exit() endfunction call Cream_menu_load_file() "---------------------------------------------------------------------- " Recent File menu function! Cream_load_menu_mru() if filereadable($CREAM . "cream-menu-mru.vim") > 0 execute "source " . $CREAM . "cream-menu-mru.vim" endif endfunction call Cream_load_menu_mru() " vim:foldmethod=marker