Skip to content
Browse files

Concluded that vim tabs should be used instead of this plugin\!

  • Loading branch information...
1 parent 4b8cbb6 commit 2a568046a74609bc8928b2e2c5737b0ae0ee00fe yut45390 committed Sep 24, 2011
Showing with 8 additions and 2,593 deletions.
  1. +8 −53 README
  2. +0 −2,339 plugin/minibufexpl.vim
  3. +0 −201 project.html
View
61 README
@@ -1,58 +1,13 @@
-This is an updated and modified version of the script available here: http://www.vim.org/scripts/script.php?script_id=159
+This used to be a fork of http://fholgado.com/minibufexpl
-[6.4.1] 1/6/2011 - Added patches by Danielle Church to sort the MBE window by most recently used buffers. Added patches by Stephan Sokolow to close MBE on buffer select.
+I have come to the conclusion that this is a superfluous plugin,
+because there's these wonderful commands in vim
-[6.4.0] 1/1/2011 - Added Emacs-like 'uniquify' feature where MBE will show a parent directory when there are 2 buffers with the same filename.
+:tabedit
+:tabn
+:tabp
+:tabo
-i.e. There are 2 buffers with the same filename:
-/ProjectA/Application/CSS/style.css
-/ProjectB/Applications/CSS/style.css
+When a buffer needs to be made visible, make a tab!
-Originally, MBE would just display 'style.css' for both buffers. Now, MBE crawls up the directory tree to find the first differentiating parent directory for both buffers, s MBE will show:
-ProjectA/style.css
-ProjectB/style.css
-
-- Now sets winfixheight and winfixwidth for the MBE buffer so that it does not get resized automatically by window resizing commands such as 'CTRL W='.
-
-[6.3.7] 12/19/2010 - MBE now uses it's own custom statusline format to reduce visual clutter. (By Federico Holgado)
-
-[6.3.6] 12/16/2010 - Added behavior to reflect buffer highlighting states automatically on buffer change and buffer save. This corrects previous behavior where MBE was only updated after entering another buffer and it would be marked as modified even though the buffer was just saved. (By Federico Holgado)
-
-[6.3.5] 12/12/2010 - Added two more states for buffer names to the included possible states to reflect the current buffer that is active. These states can be targeted by the following syntax: (By Federico Holgado)
-
- MBEVisibleActive
- MBEVisibleChangedActive
-
-You can see a screenshot of what this looks like here: http://fhl.gd/qnNQ
-
-[6.3.4] - Added to the original script were the following keybindings: (By Oliver Uvman)
-
-Added to the original script were the following keybindings: (By Oliver Uvman)
-
-h and l to move left and right when selecting buffers in addition to the original Tab and Shift-Tab
-o and e to show a buffer in addition to the original <CR>
-s to open the selected buffer in a split window
-v to open the selected buffer in a vertically split window
-
-
-Big thanks to Bindu Wavell for writing this script! I just added some minor things which I think others might find useful. I tried submitting this as a patch to him, but got no answer. Bindu: Contact me if you want to integrate this into your plugin and I'll remove this one.
-
-Original description:
-
-Several modern GUI editors list your open buffers as tabs along the top or bottom of your screen (VisualStudio, DreamWeaver, EditPlus and UltraEdit come to mind), now we have this feature in VIM! You can checkout a screenshot here: http://www.wavell.net/vim/vim_screenshot.gif.
-
-You can quickly switch buffers by double-clicking the appropriate "tab" (if you don't want to use the mouse just put the cursor on the "tab" and press enter). As you open and close buffers the tabs get updated. Buffers that are modified get visually marked and buffers that are open in a window get visually marked. The -MiniBufferExplorer- opens automatically when you open more than one eligible buffer (no need to open the explorer if you’re only editing one file.) -MiniBufExplorer- doesn't bother showing non-modifiable or hidden buffers. You can delete buffers by selecting them and pressing d on the keyboard.
-
-When you are in the -MiniBufExplorer- window, Tab and Shift-Tab move forward and backward respectively through the buffer list.
-
-There are a growing number of optional features in this script that are enabled by letting variables in your .vimrc:
-
- control + the vim direction keys [hjkl] can be made to move you between windows.
- control + arrow keys can be made to do the same thing
- control + tab & shift + control + tab can be setup to switch through your open windows (like in MS Windows)
- control + tab & shift + control + tab can alternatively be setup to cycle forwards and backwards through your modifiable buffers in the current window
-
-NOTE: Some versions of vim don't support all of the key mappings that this script uses so you may experience degraded functionality. For example on Solaris SHIFT-TAB appears to fire the regular TAB mappings (same for console and gvim.) Also CONTROL+ARROWS appears to work in gvim on Solaris, but not in my xterm. All of the key bindings appear to work in Windows.
-
-[Thanks to Jeff Lanzarotta for his BufExplorer plugin (http://vim.sourceforge.net/scripts/script.php?script_id=42) that got me started down this slippery slope.]
View
2,339 plugin/minibufexpl.vim
0 additions, 2,339 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
201 project.html
@@ -1,201 +0,0 @@
-<html>
-
- <head>
-
- <title>MiniBufExplorer</title>
-
- <link rel="stylesheet" href="http://dl.dropbox.com/u/118650/mbe/keys.css" type="text/css" media="screen" />
- <script type="text/javascript" src="http://dl.dropbox.com/u/118650/mbe/scripts/shCore.js"></script>
- <script type="text/javascript" src="http://dl.dropbox.com/u/118650/mbe/scripts/shBrushVimscript.js"></script>
- <link type="text/css" rel="stylesheet" href="http://dl.dropbox.com/u/118650/mbe/styles/shCore.css"/>
- <link type="text/css" rel="stylesheet" href="http://dl.dropbox.com/u/118650/mbe/styles/shThemeDefault.css"/>
- <link type="text/css" rel="stylesheet" href="http://dl.dropbox.com/u/118650/mbe/styles/shThemeBlackboard.css"/>
- <script type="text/javascript">
- SyntaxHighlighter.config.clipboardSwf = 'http://dl.dropbox.com/u/118650/mbe/scripts/clipboard.swf';
- SyntaxHighlighter.defaults['gutter'] = false;
- SyntaxHighlighter.defaults['toolbar'] = false;
- SyntaxHighlighter.all();
- </script>
-
- <style>
-
- html {
- background: gray;
- }
-
- body {
- background: white;
- width: 960px;
- padding: 10px;
- margin: 0 auto;
- font-family: helvetica;
- }
-
- img {
- display: block;
- margin: 0 auto;
- }
-
- </style>
-
- </head>
-
- <body>
-
- <h1>MiniBufExplorer</h1>
-
- <p>I've been working on improving MiniBufExplorer, a plugin for <a href="http://vim.org">Vim</a>.</p>
-
- <!-- <img src="http://dl.dropbox.com/u/118650/mbe/mbe.png" /> -->
-
- <h2>The story: Why am I doing this?</h2>
-
- <p>The reason why I took it upon myself to improve MiniBufExplorer is a matter of need. I am a User Interface designer who spends a lot of time writing front-end code. I recently found Vim and fell in love with it. During my search for the plugins that would help me the most, I came across MBE. I loved it initially, but quickly saw that it had some major flaws.</p>
-
- <p>After using MBE for some time, I have been able to identify some areas that needed some dire attention from a usability standpoint. I am doing my best to fix those issues without adding "feature bloat" or other unnecessary things to MBE. I am always open to suggestions and discussion as to what we can do to improve this great plugin.</p>
-
- <p>I would also like to thank <a href="http://www.wavell.net/">Bindu Wavell</a>, who is the plugin's original creator and <a href="https://github.com/OliverUv">Oliver Uvman</a>, who like myself has been hacking at MBE to make needed improvements. My goal is to consolidate the code and act as the maintainer so that any further changes from contributors can be found in a single location.</p>
-
- <hr />
-
- <h2>New and Improved Features</h2>
-
- <ol>
- <li>Highlight currently active buffer</li>
- <li>Show differentiating parent directory with multiple buffers with the same filename</li>
- <li>Custom non-intrusive status line</li>
- <li>Update buffer name color according to buffer state (modified or unmodified) immediately after changes are made</li>
- <li>Prevents resizing of MBE buffer by window resizing commands</li>
- </ol>
-
- <hr />
-
- <h2>Download MiniBufExplorer 6.4.0 (1/1/2011)</h2>
-
- <a style="font-size:larger;" href="https://github.com/fholgado/minibufexpl.vim">Download MiniBufExplorer from GitHub</a>
-
- <p>If you want to report a bug, or suggest a feature just post it to the <a href="https://github.com/fholgado/minibufexpl.vim/issues">GitHub Issue Tracker for MiniBufExplorer</a>. If you don't have a GitHub account, just email me at fholgado at gmail.</p>
-
- <hr />
-
- <h2>Features Overview</h3>
-
- <h3>Current Buffer Highlighting</h3>
-
- <p>Previously, MBE would only tell you if a buffer was currently visible in the editor like such:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/current_buffer/old.png" />
-
- <p>Now, MBE shows you the buffer that is currently visible <em>and</em> active in the editor. Here is an animated GIF that shows the current buffer highlighting in action:</p>
-
- <!-- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/current_buffer/new1.png" /> -->
- <!-- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/current_buffer/new2.png" /> -->
- <!-- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/current_buffer/new3.png" /> -->
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/mbe1.gif" />
-
- <hr />
-
- <h3>Duplicate Buffer Names</h3>
-
- <p>If you are an MBE user, I am sure you are familiar with the following scenario:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/dupe_buf_names/old_fade.png" />
-
- <p>The problem is that buffers with the same filename do not get differentiated, and it makes it very hard to find the buffer you are trying to edit. The simple solution is to show a parent directory that is different between all buffers like such:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/dupe_buf_names/new_fade.png" />
-
- <p>Let me explain how it works. Let's observe 2 files that have the same filename.</p>
-
- <pre>
- /Users/fholgado/Sites/website1/css/style.css
- /Users/fholgado/Sites/website2/css/style.css
- </pre>
-
- <p>You'll notice both files have the same filename <em>and</em> are in a folder called 'css'. This happens all the time in web development projects.</p>
-
- <p>In order to differentiate the two files, MBE now crawls up the directory tree and finds the first parent directory that differs from both files, which in this case is 'website1' and 'website2'. MBE will now show you these 2 files as such:</p>
-
- <div class="mbe_dupe_buffers" style="padding:5px 0;background:#1B1D1E;display:block;font-family:Andale Mono;">
- <span style="color:#5DC2D6">[1:website1/style.css][2:website2/style.css]</span>
- </div>
-
- <hr />
-
- <h3>Buffer Save States</h3>
-
- <p>It is always important to be able to see at a glance what buffers are modified and need to be saved. MBE now shows you respective colors whether the buffer is modified or not modified.</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/save_states/new.png" />
-
- <p><strong>Most importantly</strong>, MBE now updates the buffer states immediately after making changes, instead of the previous behaviour that only updated buffer states when switching buffers.</p>
-
- <hr />
-
- <h3>Status Line Clutter</h3>
-
- <p>Previously, the MBE buffer would use the same statusline that is currently configured for Vim. This adds a lot of visual clutter to MBE and does not add any functionality, since the status line is showing information for a buffer that does not contain any real content.</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/status_line/old.png" />
-
- <p>MBE now uses it's own custom Status Line format to reduce the unwanted information. This line is customizable and can even be empty.</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/status_line/new.png" />
-
- <hr />
-
- <h3>Window Resizing</h3>
-
- <p>Previously, the MBE buffer made the automatic window resizing using the <span class="dark-keys"><kbd>ctrl</kbd> + <kbd>w</kbd> + <kbd>=</kbd></span> command in Vim. Many of you have seen the following picture:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/window_resizing/old.png" />
-
- <p>MBE now maintains it's buffer size both in horizontal and vertical mode when using window resizing commands. Now you can take a Vim tab that looks like this:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/window_resizing/new1.png" />
-
- <p>And turn it into something like this without worrying about the MBE window becoming large as well:</p>
-
- <img src="http://dl.dropbox.com/u/118650/mbe/screenshots/window_resizing/new2.png" />
-
- <hr />
-
- <h3>Customizing Colors</h3>
-
- <p>Here are all the color additions to customize MBE's new features. You can add the following to your Color file and customize the color accordingly:</p>
-
- <pre class="brush: vimscript">
- " MiniBufExpl Colors
- hi MBEVisibleActive guifg=#A6DB29 guibg=fg
- hi MBEVisibleChangedActive guifg=#F1266F guibg=fg
- hi MBEVisibleChanged guifg=#F1266F guibg=fg
- hi MBEVisibleNormal guifg=#5DC2D6 guibg=fg
- hi MBEChanged guifg=#CD5907 guibg=fg
- hi MBENormal guifg=#808080 guibg=fg
- </pre>
-
- <hr />
-
- <h2>Download MiniBufExplorer 6.4.0 (1/1/2011)</h2>
-
- <a style="font-size:larger;" href="https://github.com/fholgado/minibufexpl.vim">Download MiniBufExplorer from GitHub</a>
-
- <p>If you want to report a bug, or suggest a feature just post it to the <a href="https://github.com/fholgado/minibufexpl.vim/issues">GitHub Issue Tracker for MiniBufExplorer</a>. If you don't have a GitHub account, just email me at fholgado at gmail.</p>
-
- </body>
-
-<script type="text/javascript">
-// <![CDATA[
- var _gaq = _gaq || [];
- _gaq.push(['_setAccount', 'UA-4063957-3']);
- _gaq.push(['_trackPageview']);
-
- (function() {
- var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
- ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
- })();
-// ]]>
-</script>
-
-</html>

0 comments on commit 2a56804

Please sign in to comment.
Something went wrong with that request. Please try again.