Re: --with-features=TYPE
A.J.Mechelynck wrote: Robert Hicks wrote: Georg Dahn wrote: Hi! --- Robert Hicks [EMAIL PROTECTED] wrote: I see in the configure file that --with-features takes tiny, small, normal, big or huge (default: normal). Is there some place I can look to see what those options provide? Try :h :version Best wishes, Georg Cool, exactly what I was looking for. : ) Robert Basically: - the tiny version has nothing that can be omitted -- not even online help, visual mode, or expression evaluation; - the small version has visual mode and split windows (and online help) but it still lacks expression evaluation; - the normal version has a lot more, but it still lacks some important (to me) features, including support for multi-byte encodings (such as Chinese or Unicode) and for right-to-left writing systems (such as Hebrew, Arabic or Farsi); - the big version has everything except the profiling feature; - the huge version has it all. - There are still some features (such as MzScheme, Perl, Python, Tcl, and, on X11 systems, GNOME, which requires a GTK+ GUI) which have to be included manually. I would recommend to stay away from the tiny and small versions, unless you're running on a system with very limited memory like 16-bit Dos. Personally, since I like the big all-bells-and-whistles package, I source (not run) the following bash script just before running make: -8- #!/bin/bash # # this file must be sourced, not run # # set environment variables export CONF_OPT_GUI='--enable-gnome-check' export CONF_OPT_PERL='--enable-perlinterp' export CONF_OPT_PYTHON='--enable-pythoninterp' export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4' export CONF_OPT_RUBY='--enable-rubyinterp' export CONF_OPT_MZSCHEME='--enable-mzschemeinterp' export CONF_OPT_CSCOPE='--enable-cscope' export CONF_OPT_MULTIBYTE='--enable-multibyte' export CONF_OPT_OUTPUT='--enable-fontset' export CONF_OPT_FEAT='--with-features=huge' export CONF_OPT_COMPBY='[EMAIL PROTECTED]' -8- (if your browser, or mine, beautified the last line by breaking it between export and CONF_OPT_COMPBY, well, it shouldn't have.) You can use this script, changing anything you want, including of course at least the compiled-by line. If you lack the development packages required for one or other of the configured-in options, configure will turn it off. A couple of questions if I may... #1 How do I source? I have never done that prior to a make before... #2 If I do this: export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4' do I have to pass anything else to point it to libs or anything? I have ActiveTcl installed on my HP/UX boxes. #3 If you are passing: export CONF_OPT_FEAT='--with-features=huge' and the huge version has it all why pass the multibyte, etc.? :Robert
Re: --with-features=TYPE
Robert Hicks wrote: I see in the configure file that --with-features takes tiny, small, normal, big or huge (default: normal). Is there some place I can look to see what those options provide? Perhaps my webpage: http://mysite.verizon.net/astronaut/vim/vimfeat.html will be of help. Regards, Chip Campbell
Re: --with-features=TYPE
Robert Hicks wrote: A.J.Mechelynck wrote: Robert Hicks wrote: Georg Dahn wrote: Hi! --- Robert Hicks [EMAIL PROTECTED] wrote: I see in the configure file that --with-features takes tiny, small, normal, big or huge (default: normal). Is there some place I can look to see what those options provide? Try :h :version Best wishes, Georg Cool, exactly what I was looking for. : ) Robert Basically: - the tiny version has nothing that can be omitted -- not even online help, visual mode, or expression evaluation; - the small version has visual mode and split windows (and online help) but it still lacks expression evaluation; - the normal version has a lot more, but it still lacks some important (to me) features, including support for multi-byte encodings (such as Chinese or Unicode) and for right-to-left writing systems (such as Hebrew, Arabic or Farsi); - the big version has everything except the profiling feature; - the huge version has it all. - There are still some features (such as MzScheme, Perl, Python, Tcl, and, on X11 systems, GNOME, which requires a GTK+ GUI) which have to be included manually. I would recommend to stay away from the tiny and small versions, unless you're running on a system with very limited memory like 16-bit Dos. Personally, since I like the big all-bells-and-whistles package, I source (not run) the following bash script just before running make: -8- #!/bin/bash # # this file must be sourced, not run # # set environment variables export CONF_OPT_GUI='--enable-gnome-check' export CONF_OPT_PERL='--enable-perlinterp' export CONF_OPT_PYTHON='--enable-pythoninterp' export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4' export CONF_OPT_RUBY='--enable-rubyinterp' export CONF_OPT_MZSCHEME='--enable-mzschemeinterp' export CONF_OPT_CSCOPE='--enable-cscope' export CONF_OPT_MULTIBYTE='--enable-multibyte' export CONF_OPT_OUTPUT='--enable-fontset' export CONF_OPT_FEAT='--with-features=huge' export CONF_OPT_COMPBY='[EMAIL PROTECTED]' -8- (if your browser, or mine, beautified the last line by breaking it between export and CONF_OPT_COMPBY, well, it shouldn't have.) You can use this script, changing anything you want, including of course at least the compiled-by line. If you lack the development packages required for one or other of the configured-in options, configure will turn it off. A couple of questions if I may... #1 How do I source? I have never done that prior to a make before... In bash: source myconfig or . myconfig (assuming that you've copied the script as myconfig in the top directory of your build hierarchy, which has src/ runtime/ etc. subdirectories, and that you have made that directory current). Doing just myconfig won't work, because bash will run it in a temporary environment and restore the environment afterwards. It may sound strange but I've tried. The advantage of this approach (setting environment variables) is that you don't need to make _any_ change in the Makefile, and yet make will invoke configure with _your_ preferred settings. #2 If I do this: export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4' do I have to pass anything else to point it to libs or anything? I have ActiveTcl installed on my HP/UX boxes. You pass he TCL version as above; if your distribution of TCL is properly installed, configure (run by make the first time, or whenever you run make reconfig in the src/ directory) will find it and make will set up the compiler and linker command-lines to include the proper header files and libraries. For perl, python, etc. you don't even need to pass the interpreter version. If your TCL distribution is _not_ properly installed, or if you _don't_ have the tcl-devel package (or whatever it is called on your flavour of Linux), configure will exclude it and you'll end up with -tcl in the :version listing of your Vim executable, regardless of the presence of --enable-tclinterp #3 If you are passing: export CONF_OPT_FEAT='--with-features=huge' and the huge version has it all why pass the multibyte, etc.? At the moment I wrote this script, it wasn't clear to me that multibyte and cscope didn't need to be included manually. Also, if you want to *exclude* them, the presence of these lines makes it obvious that, e.g., to exclude +multi_byte (I don't recommend it, but it's your funeral not mine) you export CONF_OPT_MULTIBYTE='--disable-multibyte'. The five interpreted languages, the GNOME interface, and of course the compiled by line, *must* be configured manually, or they won't be included, not even in a Huge version. As for the fontset feature (+xfontset), :help +feature-list says that it is system-dependent, and it seems that my system hasn't got what it takes, since my Vim executable ends up with -xfontset. :Robert Best regards, Tony.
Re: --with-features=TYPE
On 8/14/06, Robert Hicks [EMAIL PROTECTED] wrote: I see in the configure file that --with-features takes tiny, small, normal, big or huge (default: normal). Is there some place I can look to see what those options provide? The answer is in file features.h, search for FEAT_HUGE, but it's not concentrated in a single place and it's scattered all around the features.h file and it's in fact difficult to track down. For a simple answer as to what FEAT_HUGE entails, here is :version from the vim7 which was built with --with-features=huge and no other config additions. As you see, it includes GUI, and eval, and almost everything, except interpreters (-tcl -perl and -python -ruby). BTW I would prefer :version to print +features first, and then -features in separate paragraph, separately. Huge version with GTK2 GUI. Features included (+) or not (-): +arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments +cryptv +cscope +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand +jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap +menu +mksession +modify_fname +mouse +mouseshape +mouse_dec +mouse_gpm -mouse_jsbterm +mouse_netterm +mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra -perl +postscript +printer +profile -python +quickfix +reltime +rightleft -ruby +scrollbind +signs +smartindent -sniff +statusline -sun_workshop +syntax +tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup +X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save Yakov
Re: --with-features=TYPE
Robert Hicks wrote: Georg Dahn wrote: Hi! --- Robert Hicks [EMAIL PROTECTED] wrote: I see in the configure file that --with-features takes tiny, small, normal, big or huge (default: normal). Is there some place I can look to see what those options provide? Try :h :version Best wishes, Georg Cool, exactly what I was looking for. : ) Robert Basically: - the tiny version has nothing that can be omitted -- not even online help, visual mode, or expression evaluation; - the small version has visual mode and split windows (and online help) but it still lacks expression evaluation; - the normal version has a lot more, but it still lacks some important (to me) features, including support for multi-byte encodings (such as Chinese or Unicode) and for right-to-left writing systems (such as Hebrew, Arabic or Farsi); - the big version has everything except the profiling feature; - the huge version has it all. - There are still some features (such as MzScheme, Perl, Python, Tcl, and, on X11 systems, GNOME, which requires a GTK+ GUI) which have to be included manually. I would recommend to stay away from the tiny and small versions, unless you're running on a system with very limited memory like 16-bit Dos. Personally, since I like the big all-bells-and-whistles package, I source (not run) the following bash script just before running make: -8- #!/bin/bash # # this file must be sourced, not run # # set environment variables export CONF_OPT_GUI='--enable-gnome-check' export CONF_OPT_PERL='--enable-perlinterp' export CONF_OPT_PYTHON='--enable-pythoninterp' export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4' export CONF_OPT_RUBY='--enable-rubyinterp' export CONF_OPT_MZSCHEME='--enable-mzschemeinterp' export CONF_OPT_CSCOPE='--enable-cscope' export CONF_OPT_MULTIBYTE='--enable-multibyte' export CONF_OPT_OUTPUT='--enable-fontset' export CONF_OPT_FEAT='--with-features=huge' export CONF_OPT_COMPBY='[EMAIL PROTECTED]' -8- (if your browser, or mine, beautified the last line by breaking it between export and CONF_OPT_COMPBY, well, it shouldn't have.) You can use this script, changing anything you want, including of course at least the compiled-by line. If you lack the development packages required for one or other of the configured-in options, configure will turn it off. Best regards, Tony.