Emacs auto-complete popup menu broken - emacs

I'm have reinstalled my emacs and now I'm using emacs v24.3.50 with auto-complete v1.4 and popup.el v0.5. Unfortunately the popup "menu" of auto-complete is kinda broken (see attached screenshot).
The different items are not aligned along a commong vertical line [ignore the black overlay, that stems from CEDET and is probably meant to be placed on the right side next to the popup menu; the problem remains when disabling CEDET, so it is not related).
From what I can tell it looks like the extent of this "shift" between lines depends on how much the length of the strings differs. Also, when selecting a different suggestion using the arrow keys the horizontal shift of the lines changes a little (~few pixels) each time the mark is moved one line up/down.
I have uploaded the part of my .emacs.d/init.el that is used for configuring auto-complete here.
Any suggestions on how to fix this?

It appears you are using a proportional font, which breaks the calculation of the left edge of the overlay.
You can try changing the way auto-complete computes the column:
(setq popup-use-optimized-column-computation nil)
You can also change to a fixed width font.
Note that some other completion systems for Emacs can use tooltips instead of overlays, which would avoid this problem.

Related

Change size of whitespace tab arrow character in VS Code

I am currently setting up VS Code on a new computer and want to maintain all the same configuration, addons etc that I had on my previous computer. I was able to copy all of the settings, fonts, themes I like, etc; however for some reason I can't figure out how to change the size of the Tab arrow character for whitespace.
In my old editor, the Tab arrow spanned two spaces, whereas on my new computer, the tab arrow only spans one space.
I've been looking all over, and tried googling any variation of "change tab character size", "modify tab arrow span" etc that I could think of. I seem to remember changing the arrow size at some years ago, which is how I got it in my old editor, but I've totally forgotten, and can't find the setting anywhere, neither searching in the VS Code settings, nor on google like I mentioned; the only things that turn up are for changing tab indent size from 2, to 4 spaces etc.
Here are some screenshots of what I mean, from the new VS Code editor and from the one on my older computer:
Current tab arrow size in VS Code:
Old tab arrows size (what I want in my new editor):
This is driving me crazy, and I'm sure it's a simple setting somewhere that I'm missing. Any help would be appreciated!
Edit: In case it is relevant, I'm using JetBrains Mono as my font, and its the same version of the font as from my old computer as well, I copied it over and installed it on the new PC.
To my shock, the issue resolved itself after rebooting my PC. Once again it would seem that the tried and true "have you tried turning it off and on again" continues to ring true in many cases.
The only explanation I can think of is that perhaps some of the font symbols for whitespace characters weren't fully updated for some reason after installing the JetBrains Mono font, which I had installed earlier the same day, and after rebooting my PC I guess all the characters were fully updated/refreshed, and now the longer arrow is displayed for the tabs; I guess this also means that there is no arrow resizing per se, and the arrow symbol for the tab is simply the font symbol.
In any case, I figured I should write this update as an answer in case something like this happens to anyone else in the future.

Is there a way to configure VS Code to format code at the bottom of the editor instead of at the top when there is extra space in the editor?

I'm looking for something that detects when a file's content does not fill the entire viewport of the editor, then adds extra space at the TOP of the file instead of at the BOTTOM.
VSCode does offer the option to add a default padding at the top of editors but it doesn't automatically display the padding when opening the file (and this isn't exactly the functionality I'm looking for either, since that would be inconvenient for larger files that take up more space than the viewport of the editor).
Bonus points if someone knows the answer to this for IntelliJ as well (if it exists) :)
How it looks now:
What I'm looking for:

Emacs won't highlight

I've just installed Fedora 23 and I've encountered a problem I've never seen in many years of using Emacs.
Emacs won't allow me to highlight text. I noticed it first when trying to click-and-drag with the mouse, but then I tested it by setting the mark and moving the cursor - no highlighting.
The <drag-mouse-1> command description indicates that dragging should set a region and highlight text. Transient-mark-mode is enabled, and I'm running Emacs in its own (non-terminal) window. I can't find any other information about this. Any ideas?
Edit: On closer inspection, I can act on the region that I try to highlight as normal (cutting, copying, etc.). It seems like Emacs IS highlighting, it's just not SHOWING the highlighting. A less serious problem, but one I'd still like to fix and don't know how.
Sounds like the highlight color is the same as or similar to your background color. Try M-x list-faces-display and look at face region. That also provides you an entry point for changing any of the faces displayed - just click the face name to open Customize for the face.

Text based emacs modeline

How do we use text-only based modeline in emacs ?
I don't want a big button across the screen at the bootom of my emacs window.
Just a text line with all the contents would be good and minimal.
Similarly when I do a split screen, I don't want a scroll bar, just a "|" character
across the entire screen is enough. Is this possible ?
Doing (set-scroll-bar-mode nil) will remove the scrollbars (you can even use yascroll.el to use fringe-based scrollbars, less obtrusive than the widget based).
Regarding what you call "big button"... I think the modeline face you are using makes it look like a button (i.e., has a "beveled" border). You can change the face to look like a normal text face, with or without border, and the size you want. This is what I do. I think some themes (like solarized) do that, so you can test one of them to have a feeling of how that would work.
M-x customize-group RET mode-line-faces RET
To completely get rid of the 'button' appearance, remove the 'box' attribute from mode-line, mode-line-highlight, and mode-line-inactive.

How do I fix this random behavior with my Emacs mode line?

I am running Emacs 23.3 on Windows XP. When Emacs is started, the mode line will assume one of these two appearances at random. Needless to say, I prefer the first one. How do I figure out what is going on and how do I make the first one stick?
The images don't show it, but the first one has a GUI type appearance. If I hover over the various bits of text with a mouse, e.g. Help then the text Help turns into a button with shadows etc.
The black mode line appears to be a text mode widget. The only thing that the mouse will change on it is the highlighting.
PS: Thanks JSON!
I vaguely remember this happening years ago depending on whether or not I started Emacs from Remote Desktop. Perhaps there's an issue with color depth?
See if anything has changed your settings to
(set-face-background 'modeline "#000000")
(set-face-foreground 'modeline "#FFFFFF")
(EDIT: Color codes corrected) in any of your .el files.