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

refactor: expose path_truncate #3366

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sassanh
Copy link

@sassanh sassanh commented Nov 19, 2024

Description

Third parties and custom pickers would benefit from path_truncate being exposed in the API, specially considering it is using calc_result_length and it is too complicated and hacky for other developers to come to the conclusion they can achieve line length like that, I made it public for myself and now I can truncate paths in my custom picker like this:

utils.path_truncate(display_filename, 1, {})

I can't imagine how I could achieve this myself without investing so much time.

Fixes # (issue)

Type of change

  • This change requires a documentation update --- does it? I'm not sure if similar items in the api are documented, for example is_path_hidden is not documented.

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list relevant details about your configuration

N/A as it is just exposing something already used internally and has been tested.

Configuration:

  • Neovim version (nvim --version):
  • Operating system and version:

Checklist:

  • My code follows the style guidelines of this project (stylua)
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • [?] I have made corresponding changes to the documentation (lua annotations)

@Conni2461
Copy link
Member

We prefer if third party picker would use path_display instead

@sassanh
Copy link
Author

sassanh commented Nov 28, 2024

@Conni2461
I think I'm missing something here, path_display is a config variable taking values of hidden, tail, absolute, etc as far as I understand, path_truncate on the other hand is a utility function that actually truncates path based on the available width, I understand third party pickers should respect path_display config variable, but how can they "use" it to actually implement truncating paths respecting available width?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants