Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors and failure from bleopt complete_menu_style #458

Closed
pallaswept opened this issue Jun 9, 2024 · 24 comments
Closed

Errors and failure from bleopt complete_menu_style #458

pallaswept opened this issue Jun 9, 2024 · 24 comments
Labels
compatibility External Problem/Bug Problems/Bugs of other projects question Question / Mis-usage

Comments

@pallaswept
Copy link

ble version:
0.4.0-nightly+365101c
Bash version:
5.2.26(1)-release (x86_64-suse-linux)

Trying to set this option, an error is generated, that the function is undefined. But, it is definitely defined in ble.sh, and can be manually executed.

Either ble-reload, or manually entering the bleopt command exactly as it exists in init.sh, the setting is now accepted without error, however the completion descriptions appear broken:

bleopt: Invalid value complete_menu_style='desc-text'.
  A function 'ble/complete/menu-style:desc-text/construct-page' is not defined.


[ 11:31:10.342 09/06 ] /home/pallaswept
> bleopt complete_menu_style
bleopt complete_menu_style=align-nowrap
[ 11:31:10.373 + 0ms @ 100.0% CPU ]  bleopt complete_menu_style

[ 11:31:41.933 09/06 ] /home/pallaswept
> rg '^bleopt complete_menu' /home/pallaswept/.config/blesh/init.sh
43:bleopt complete_menu_style=desc-text
[ 11:31:41.955 + 3ms @ 114.2% CPU ]  rg '^bleopt complete_menu' /home/pallaswept/.config/blesh/init.sh

[ 11:32:34.976 09/06 ] /home/pallaswept
> bleopt complete_menu_style=desc-text
[ 11:32:34.997 + 0ms @ 100.0% CPU ]  bleopt complete_menu_style=desc-text

~                                                                 was 20ms                                                                                                                                                                                                 
> rg -.
-.                        : ^[[0;1m(action:progcomp)^[[m          | --hidden                       : ^[[0;1m(action:progcomp)^[[m     | --no-filename                     : ^[[0;1m(action:progcomp)^[[m  | --pcre2-unicode    : ^[[0;1m(action:progcomp)^[[m
-0                        : ^[[0;1m(action:progcomp)^[[m          | --hostname-bin                 : ^[[0;1m(action:progcomp)^[[m     | --no-fixed-strings                : ^[[0;1m(action:progcomp)^[[m  | --pcre2-version    : ^[[0;1m(action:progcomp)^[[m
-a                        : ^[[0;1m(action:progcomp)^[[m          | --hyperlink-format             : ^[[0;1m(action:progcomp)^[[m     | --no-follow                       : ^[[0;1m(action:progcomp)^[[m  | --pre              : ^[[0;1m(action:progcomp)^[[m
-A                        : ^[[0;1m(action:progcomp)^[[m          | -i                             : ^[[0;1m(action:progcomp)^[[m     | --no-glob-case-insensitive        : ^[[0;1m(action:progcomp)^[[m  | --pre-glob         : ^[[0;1m(action:progcomp)^[[m
--after-context           : ^[[0;1m(action:progcomp)^[[m          | -I                             : ^[[0;1m(action:progcomp)^[[m     | --no-heading                      : ^[[0;1m(action:progcomp)^[[m  | --pretty           : ^[[0;1m(action:progcomp)^[[m

image

I guess this is some kind of timing issue? Thanks in advance for any help! :)

@akinomyoga
Copy link
Owner

Can you use desc instead of desc-text? The menu style desc-text is not intended to be used with the menu for the default completions.

Trying to set this option, an error is generated, that the function is undefined. But, it is definitely defined in ble.sh, and can be manually executed.

To specify the menu-style desc-text, you need to do it after the module defining the menu-style desc-text (i.e. core-complete) is loaded. To set it up in ~/.blerc, you need to follow the description at the beginning of §7.

You can specify the other menu styles in ~/.blerc directly because auto-loader functions are defined for them.

however the completion descriptions appear broken:

Use desc. This is the intentional behavior of desc-text. The menu-style desc-text is used to show all the characters including the terminal escape sequences in a visible form. However, the default completion generates the descriptions with colors and styles using the terminal escape sequences. The descriptions generated by the default completion assumes desc. If you want to use desc-text, you need to override all the completion generation with your custom one that it doesn't include any terminal escape sequences.

@akinomyoga akinomyoga added the question Question / Mis-usage label Jun 9, 2024
@pallaswept
Copy link
Author

pallaswept commented Jun 9, 2024

Can you use desc instead of desc-text? The menu style desc-text is not intended to be used with the menu for the default completions.

Sorry I didn't mention that I had tried this. I do not see the escape characters like this, but the descriptions are still missing:

> rg -.
-.                        : (action:progcomp)                     | --hidden                       : (action:progcomp)                | --no-filename                     : (action:progcomp)             | --pcre2-unicode    : (action:progcomp)
-0                        : (action:progcomp)                     | --hostname-bin                 : (action:progcomp)                | --no-fixed-strings                : (action:progcomp)             | --pcre2-version    : (action:progcomp)
-a                        : (action:progcomp)                     | --hyperlink-format             : (action:progcomp)                | --no-follow                       : (action:progcomp)             | --pre              : (action:progcomp)

Thanks for explaining the difference between the two options. I will use desc from now on. I misunderstood the docs, when it mentioned leaving the escape characters, I thought that implied all the colour from ble.sh. I understand now, I think 😆

Thanks also for the reminder that I should have been using delayed loading. I tried taking that approach, and now I don't get the 'invalid value' or 'not defined' errors mentioned in the first post, but I still have the missing descriptions shown here. I assumed that I am setting it up incorrectly, but I'm not sure, because it seems to work sometimes, but not others. For example:

If I type fzf (f,z,f,space) and hit tab, I see this (note the description is present for the +i option at the end)

> fzf .Trash-0
.Trash-0   : directory                                            | etc   : directory                                                 | proc : directory                                                  | tmp : directory (sticky)
.snapshots : directory                                            | home  : directory                                                 | root : directory                                                  | usr : directory
bin        : symbolic link                                        | lib   : symbolic link                                             | run  : directory                                                  | var : directory
boot       : directory                                            | lib64 : symbolic link                                             | sbin : symbolic link                                              | +i  : Case‐sensitive match
cmd-output : file                                                 | mnt   : directory                                                 | srv  : directory                                                  | +m  : Disable multi‐select
dev        : directory                                            | opt   : directory                                                 | sys  : directory                                                  | +s  : Do not sort the result

If I type fzf - (add hyphen for context) and hit tab, the description for -i is as above. (these aren't the same 'i' option, to be clear)

> fzf --
--                 : (action:progcomp)                            | --filter       : (action:progcomp)                                | --min-height        : (action:progcomp)                           | --print0      : (action:progcomp)
-0                 : (action:progcomp)                            | -h             : (action:progcomp)                                | --multi             : (action:progcomp)                           | --print-query : (action:progcomp)
-1                 : (action:progcomp)                            | --header       : (action:progcomp)                                | -n                  : (action:progcomp)                           | --prompt      : (action:progcomp)
--ansi             : (action:progcomp)                            | --header-first : (action:progcomp)                                | --no-bold           : (action:progcomp)                           | -q            : (action:progcomp)
--bind             : (action:progcomp)                            | --header-lines : (action:progcomp)                                | --no-clear          : (action:progcomp)                           | --query       : (action:progcomp)
--border           : (action:progcomp)                            | --height       : (action:progcomp)                                | --no-color          : (action:progcomp)                           | --read0       : (action:progcomp)
--border-label     : (action:progcomp)                            | --help         : (action:progcomp)                                | --no-extended       : (action:progcomp)                           | --reverse     : (action:progcomp)
--border-label-pos : (action:progcomp)                            | --history      : (action:progcomp)                                | --no-hscroll        : (action:progcomp)                           | --scheme      : (action:progcomp)
--color            : (action:progcomp)                            | --history-size : (action:progcomp)                                | --no-mouse          : (action:progcomp)                           | --scroll-off  : (action:progcomp)
--cycle            : (action:progcomp)                            | --hscroll-off  : (action:progcomp)                                | --no-scrollbar      : (action:progcomp)                           | --select-1    : (action:progcomp)
-d                 : (action:progcomp)                            | -i             : (action:progcomp)                                | --no-separator      : (action:progcomp)                           | --separator   : (action:progcomp)
--delimiter        : (action:progcomp)                            | --info         : (action:progcomp)                                | --no-sort           : (action:progcomp)                           | --sync        : (action:progcomp)
--disabled         : (action:progcomp)                            | --jump-labels  : (action:progcomp)                                | --no-unicode        : (action:progcomp)                           | --tabstop     : (action:progcomp)
-e                 : (action:progcomp)                            | --keep-right   : (action:progcomp)                                | --nth               : (action:progcomp)                           | --tac         : (action:progcomp)
--ellipsis         : (action:progcomp)                            | --layout       : (action:progcomp)                                | --padding           : (action:progcomp)                           | --tiebreak    : (action:progcomp)
--exact            : (action:progcomp)                            | --listen       : (action:progcomp)                                | --pointer           : (action:progcomp)                           | --track       : (action:progcomp)
--exit-0           : (action:progcomp)                            | --literal      : (action:progcomp)                                | --preview           : (action:progcomp)                           | --version     : (action:progcomp)
--expect           : (action:progcomp)                            | -m             : (action:progcomp)                                | --preview-label     : (action:progcomp)                           | --with-nth    : (action:progcomp)
-f                 : (action:progcomp)                            | --margin       : (action:progcomp)                                | --preview-label-pos : (action:progcomp)                           | 
--filepath-word    : (action:progcomp)                            | --marker       : (action:progcomp)                                | --preview-window    : (action:progcomp)                           | 

I figured it must be 'pilot error' but when I saw this inconsistency, I had second thoughts. Again, my apologies if this is a bad setup on my behalf.

@akinomyoga
Copy link
Owner

akinomyoga commented Jun 9, 2024

Sorry I didn't mention that I had tried this. I do not see the escape characters like this, but the descriptions are still missing:

Ah, OK. That happens when ble.sh fails to extract the descriptions from the man page. The string (action:progcomp) is the string shown when no corresponding description is found for the option, and it tells that the option is suggested by the programmable completion (progcomp).

  • What is the result of the following command?
$ ls -lt "$_ble_base_cache/complete.mandb/$LANG" | head

One possibility is that the man page of rg and fzf are not prepared in your system.

  • Do man rg and man fzf show any man pages?

Another possibility is that the format of the man pages is totally different in your system.

  • Are any descriptions generated for other basic utilities such as ls? What would be the result for ls -[TAB]?

@pallaswept
Copy link
Author

I think you are on to the problem immediately. The manpages are installed and seem to be working, but the cache seems incomplete:

> \ls -lt "$_ble_base_cache/complete.mandb/$LANG"
total 32
-rw-r--r-- 1 pallaswept pallaswept    87 Jun  9 13:37 fzf
drwxr-xr-x 1 pallaswept pallaswept    28 Jun  9 13:37 man.d
-rw-r--r-- 1 pallaswept pallaswept 21523 Jun  9 13:35 systemctl
-rw-r--r-- 1 pallaswept pallaswept   561 Jun  9 13:34 cd
drwxr-xr-x 1 pallaswept pallaswept     4 Jun  9 13:34 help.d

> bat "$_ble_base_cache/complete.mandb/$LANG"/fzf
───────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
       │ File: /home/pallaswept/.cache/blesh/0.4/complete.mandb/en_GB.UTF-8/fzf
───────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
   1   │ +i^\^\ ^\Case‐sensitive match
   2   │ +m^\^\ ^\Disable multi‐select
   3   │ +s^\^\ ^\Do not sort the result
───────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

I notice rg is absent, I did try to trigger completion for it, but still it remains the same. I tried systemctl and cd earlier when I was posting to you. I checked that I have write perms there and I do. So, I refreshed the manpage databse and tried to trigger autocompletion for bat, which ... half-worked? I am unsure what this means.

> sudo mandb
Purging old database entries in /usr/share/man...
...
0 man subdirectories contained newer manual pages.
0 manual pages were added.
0 stray cats were added.
0 old database entries were purged.

> bat --color
--color <when>        : Specify when to use colored output. The … | --language <language>                      [-l] highlights lines… | --show-all                 : [-A] Show non-printable characters … | --config-dir           : (action:progcomp)
--decorations <when>  : Specify when to use the decorations that… | --line-range :40                           prints lines 1 to 40   | --style <style-components> : Configure which elements (line numb… | --config-file          : (action:progcomp)
--diff                : [-d] Only show lines that have been adde… | --list-languages                           [-L] Display a list o… | --tabs <T>                 : Set the tab width to T spaces. Use … | --diagnostic           : (action:progcomp)
--diff-context <N>... : Include N lines of context around added/… | --list-themes                              Display a list of sup… | --terminal-width <width>   : Explicitly set the width of the ter… | --generate-config-file : (action:progcomp)
--file-name <name>... : Specify the name to display for a file. … | --map-syntax <glob‐pattern:syntax‐name>... [-m] Map a glob patte… | --theme <theme>            : Set the theme for syntax highlighti… | --ignored-suffix       : (action:progcomp)
--force-colorization  : [-f] Alias for ’‐‐decorations=always ‐‐c… | --number                                   [-n] Only show line n… | --version                  : [-V] Show version information.       | --lessopen             : (action:progcomp)
--help                : [-h] Print this help message. -V, --vers… | --pager <command>                          Determine which pager… | --wrap <mode>              : Specify the text-wrapping mode (*au… | 
--highlight-line 40   : highlights line 40                        | --paging <when>                            Specify when to use t… | --acknowledgements         : (action:progcomp)                    | 
--italic-text <when>  : Specify when to use ANSI sequences for i… | --plain                                    [-p] Only show plain … | --cache-dir                : (action:progcomp)                    | 

@akinomyoga
Copy link
Owner

akinomyoga commented Jun 9, 2024

I first need to clarify that there is no standard format for the man page for defining the options and their descriptions, so one would need to use heuristic matching to the options and their descriptions (to the text or the source of the man page). ble.sh uses a rather conservative approach so that it doesn't pick wrong strings that just look like options and their description.

I confirmed that the options cannot be extracted from the man page of rg in my environment, Fedora 39. This means that the man page of rg is not formatted in a way known to ble.sh. I can later analyze the formatting used by the rg man page and add support for it to ble.sh.

For the fzf completion, ble.sh can extract the descriptions in my environment. The descriptions of all the options starting with -- seem to be extracted from the man page. One possibility is that the format of the man page was changed at a certain version of fzf. The version of the fzf package in my environment, Fedora 39, is 0.44.1 (Fedora).

  • What is the version of your installation of fzf? What is the result of fzf --version?

Or another possibility is that the distribution (either mine or yours) modifies the man page, so the format for options and descriptions is different.

for bat, which ... half-worked? I am unsure what this means.

I confirmed the behavior in my environment, but this seems to be just because the upstream man page provided by bat is outdated. See this. It doesn't contain the descriptions of those options (--acknoledgements, --cache-dir, etc.).

@pallaswept
Copy link
Author

OK, it seems like we've fixed everything here, and any further bugs are likely all upstream, so thank you for your help! I'm glad to know that my blesh config appears to be behaving as expected now.

Looking at fzf, my version is 0.52 (0.52.0), and the build for opensuse does not modify the man pages. I think that around this time is when fzf added native tmux support, so I guess maybe the man page did change?

Anyway, I do understand that it won't be possible to parse every option from every app's manpages perfectly. Honestly, I think it's pretty amazing that ble.sh can get the information that it does! I've seen a lot of very fancy bash scripting in my time, but I think ble.sh might take the cake :D

Thanks again for all of your help!

@akinomyoga
Copy link
Owner

Looking at fzf, my version is 0.52 (0.52.0), and the build for opensuse does not modify the man pages. I think that around this time is when fzf added native tmux support, so I guess maybe the man page did change?

I checked the behavior in Arch Linux where the fzf version is 0.52.0, but the problem doesn't reproduce. Maybe it is related to the chosen AWK implementation. Could you provide the result of the following command in your environment?

$ type ble/bin/awk

As for the rg man page, I'll later check its format and try to implement parsing of it if possible.

@pallaswept
Copy link
Author

Thanks for looking into this for me!

> type ble/bin/awk
ble/bin/awk is a function
ble/bin/awk () 
{ 
    '/usr/bin/gawk' -v AWKTYPE=gawk "$@"
}

> /usr/bin/gawk --version
GNU Awk 5.3.0, API 4.0, PMA Avon 8-g1, (GNU MPFR 4.2.1, GNU MP 6.3.0)

If there is anything I can do to help, you got it!

@akinomyoga
Copy link
Owner

I added support for the man-page analysis for the rg command in commit 063bf66.

@akinomyoga
Copy link
Owner

As for the fzf completion, I confirmed the behavior in openSUSE Tumbleweed. It seems the "hyphens" in the openSUSE man page of fzf are not actually "the" hyphens, but some Unicode hyphens. You can confirm that by searching for e.g. --help in the man page of the fzf command. It doesn't hit.

This should be caused by the combination of missing escaping of hyphens in the upstream fzf man page source (fzf.1) and openSUSE's configurations of groff/nroff for the man pages. I'll later submit a pull request to the upstream fzf. I can also implement a workaround in ble.sh later because I anticipate other man pages may have the same problem of missing escaping of hyphens.

@pallaswept
Copy link
Author

It seems the "hyphens" in the openSUSE man page of fzf are not actually "the" hyphens, but some Unicode hyphens

I imagine that was very obscure and not trivial to find, well done!

@akinomyoga
Copy link
Owner

junegunn/fzf#3885 merged in the upstream.

@akinomyoga
Copy link
Owner

I pushed a workaround f160b8f in the master branch.

@akinomyoga akinomyoga added External Problem/Bug Problems/Bugs of other projects compatibility labels Jul 1, 2024
@pallaswept
Copy link
Author

Thanks!

@akinomyoga
Copy link
Owner

I was waiting for the upstream sharkdp/bat#2995 to be processed, but there is no activity in the upstream PR after one approval. I gave up waiting for it. Since the problems inherent to ble.sh seem to be fixed, let me close the issue. @pallaswept Thanks again for your report!

@akinomyoga
Copy link
Owner

akinomyoga commented Jul 29, 2024

I asked the upstream about sharkdp/bat#2995, and then it was quickly merged!

@pallaswept
Copy link
Author

I don't want to annoy you with notifications but this is the third time I wanted to say this today and heart emojis just aren't doing it:

Thanks!!!! :)

@pallaswept
Copy link
Author

Hi @akinomyoga I hope you are well. I have good news today, I have found the cause of many of the failures on my machine.

My LESS environment variable contained the --LINE-NUMBERS option, and that was causing the failures on multiple manpages (surprisingly, not all!). Removing that instantly fixed almost all missing completions for me.

I do like to have that option there though. I use it when reading normal text files and source code. I wonder if it might be possible to fix this from the ble.sh side? I was thinking, perhaps when calling man to populate the complete menus, it could override the LESS variable with one that is appropriate, like
Now:

ble/complete/mandb/search-file/.check "$(man -w "$command" 2>/dev/null)" && return 0

eg Force no line numbers:

ble/complete/mandb/search-file/.check "$(LESS="--line-numbers" man -w "$command" 2>/dev/null)" && return 0

... Or maybe it could skip the first few characters until the whitespace, or something?

@akinomyoga
Copy link
Owner

Thank you for the information.

Did you confirm that the above modifications actually fix the problem? memo/D1405.extract-man.sh is not the actual code used in ble.sh. The examples in memo are the codes that were used to test the behavior of implementations. The corresponding line in the actual codebase is this:

ble/util/assign path 'ble/bin/man -w "$command"' 2>/dev/null

but I doubt this is the problem because man -w is supposed to print just the path of the file that contains the man page. I believe it doesn't use less, so the output wouldn't be affected by the LESS environment variable. In fact, the output is not affected by LESS=-N in my environment:

$ man -w man
/usr/share/man/ja/man1/man.1.gz
$ LESS=-N man -w man
/usr/share/man/ja/man1/man.1.gz

Other parts should be affected by the LESS environment variable.

@akinomyoga
Copy link
Owner

I globally set export LESS=-N and tried to reproduce the problem, but I don't seem to be able to reproduce the problem. I tried man, less, git, fzf, bat, ug, export, declare, and grep, but everything seems to work as expected. Could you give some examples of the commands for which the extraction of the options fails?

@pallaswept
Copy link
Author

pallaswept commented Aug 4, 2024

Did you confirm that the above modifications actually fix the problem?

No I'm sorry, I have caused confusion here. I just meant that as an example of what I meant, to call man with the environment variable specified. I just grabbed the first code I found which called man, and wrote this on it. Sorry, in hindsight I can see that was not smart of me.

I don't seem to be able to reproduce the problem.

I'm really sorry! Perhaps I should file a new issue. I thought this might be the same one, but maybe I have a few that are similar but not the same.

Could you give some examples of the commands for which the extraction of the options fails?

It's interesting you mention less itself because that is one of the ones I seem to have fixed here.

When I discovered this, I was trying to use journalctl (I have my bash history here). I did the usual ble.sh thing and typed in the command and a trailing - (journalctl -xeb -) and then hit tab - and as I often do, I got the options listed, but with no description for each option.

I don't know why it 'hit' me then, but I suddenly thought "Hmm when I was looking at manpages yesterday I noticed I have line numbers in them and I didn't like it, I wonder if ble.sh also doesn't like it" so I ran LESS="`echo $LESS|sed s/--LINE-NUMBERS//`" and then repeated the process to show the options for journalctl... and it worked! First time I've ever seen it work, it is very cool.

Just in case it's some evil magic combination of my LESS options, I will give you my complete LESS variable (as it was before the fix - this has line numbers forced on):

LESS="--use-color --ignore-case --long-prompt --LONG-PROMPT --file-size --LINE-NUMBERS --status-column --status-col-width=1 --status-line --underline-special --hilite-unread --window=-10 --shift=.2 --incsearch --mouse --wheel-lines=3 --wordwrap --color=N248.234$ --color=P248.234$ --color=S232.166$ --color=M-.166$ --RAW-CONTROL-CHARS --search-options=W"

Thanks for looking into this. I have my fixed LESS variable for now so it is not super urgent for me, but I thought you would like to know the situation here. I hope I haven't caused too much trouble for you.

@akinomyoga
Copy link
Owner

Thank you.

Thanks for looking into this. I have my fixed LESS variable for now so it is not super urgent for me, but I thought you would like to know the situation here. I hope I haven't caused too much trouble for you.

Any information would be helpful, but more information is definitely needed to resolve the issue.

  • What are the results of the following commands?
$ ble/widget/display-shell-version
$ type ble/complete/mandb/convert-mandoc
  • Could you still reproduce the problem when you set --LINE-NUMBERS in the LESS variable, clear the cache by rm -rf "$_ble_base_cache"/complete.mandb, and attempt the completion for an affected command?
$ export LESS='... --LINE-NUMBERS ...'    # <-- specify the content of LESS that caused the problem
$ rm -rf "$_ble_base_cache"/complete.mandb     # <-- clear the mandb cache
$ less -[TAB]     # <-- attempt the completion that caused the problem before
  • Could you also check the behavior in the following case?
$ export LESS='... --LINE-NUMBERS ...'    # <-- specify the content of LESS that caused the problem
$ rm -rf "$_ble_base_cache"/complete.mandb     # <-- clear the mandb cache
$ ble/function#advice around ble/complete/mandb/convert-mandoc 'local LESS=; ble/function#advice/do'
$ less -[TAB]     # <-- attempt the completion that caused the problem before

@pallaswept
Copy link
Author

Could you still reproduce the problem when you set --LINE-NUMBERS in the LESS variable, clear the cache by rm -rf "$_ble_base_cache"/complete.mandb, and attempt the completion for an affected command?

I am quite embarrassed, I can't reproduce this now, even with the exact same LESS variable. Maybe my cache was corrupt, and changing this setting forced it to update? I am certain that removing that option, was the thing that fixed it, but it isn't functioning like that any more, it just works.

Anyway, there is obviously no need to change ble.sh to support line numbers with less, it works fine already.

I fear I have wasted your time, I'm sorry.

Just in case this info is still useful:

> ble/widget/display-shell-version
GNU bash, version 5.2.26(1)-release (x86_64-suse-linux) [openSUSE Tumbleweed]
ble.sh, version 0.4.0-nightly+fcbf1ed (noarch) [git 2.45.2, GNU Make 4.3, GNU Awk 5.1.0, API: 3.0 (GNU MPFR 4.1.0, GNU MP 6.2.1)]
bash-completion, version 2.12.0 (hash:480ffcc6a751e55621ec526eb5dea7a0d86d9e72, 17877 bytes) (noarch)
fzf key-bindings, (hash:2da32cbab672fc962b4c56c6a052a6bf47ef2c12, 5618 bytes) (noarch) (integration: on)
fzf completion, (hash:a68dac96ed6e60c7dc412b44705f6a343089146f, 16216 bytes) (noarch) (integration: on)
starship, version 1.20.1 (rustc 1.79.0 (129f3b996 2024-06-10) (built from a source tarball), 2024-07-29 03:04:26 +00:00)
zoxide, version 0.9.4 (/usr/bin/zoxide) (integration: on)
locale: LANG=en_DK.UTF-8 LC_ADDRESS=en_AU.UTF-8 LC_MEASUREMENT=C LC_MONETARY=en_AU.UTF-8 LC_NAME=en_AU.UTF-8 LC_NUMERIC=en_AU.UTF-8 LC_PAPER=en_AU.UTF-8 LC_TELEPHONE=en_AU.UTF-8 LC_TIME=C
terminal: TERM=xterm-256color wcwidth=15.0-west/15.1-2+ri, konsole:220380 (1;115;0)

> type ble/complete/mandb/convert-mandoc
ble/complete/mandb/convert-mandoc is a function
ble/complete/mandb/convert-mandoc () 
{ 
    if [[ $_ble_util_locale_encoding == UTF-8 ]]; then
        ble/bin/groff -k -Tutf8 -man;
    else
        ble/bin/groff -Tascii -man;
    fi
}

@akinomyoga
Copy link
Owner

Never mind. It sometimes happens that a bug disappears after some event. I think LESS shouldn't clear the cache, but another operation (such as ble-update) or even a more trivial change in the system might affect the behavior

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compatibility External Problem/Bug Problems/Bugs of other projects question Question / Mis-usage
Projects
None yet
Development

No branches or pull requests

2 participants