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

Provide an option for Link copy format #12

Open
yorkxin opened this issue Sep 1, 2012 · 13 comments
Open

Provide an option for Link copy format #12

yorkxin opened this issue Sep 1, 2012 · 13 comments
Assignees

Comments

@yorkxin
Copy link
Owner

yorkxin commented Sep 1, 2012

i.e. Let user choose whether the link is formatted as

[Text](url)

or

[Text][id]

[id]:url
@yorkxin yorkxin added the chrome label Apr 28, 2014
@the-solipsist
Copy link

This feature would be very welcome!

@malcook
Copy link

malcook commented Jun 13, 2016

if you do this:

another useful format is that of org-mode, which is
[[url][text]]

and another is as html link(s)

@tohagan
Copy link

tohagan commented Jun 24, 2016

Ideally I think you'd allow the user to create custom link styles. One solution would be to allow a user to create one or more named link styles (Markdown, Dockuwiki, MediaWiki, HTML ... whatever) and then define a link text template for each style ...

  • Markdown = "[${title}](${link})"
  • Dokuwiki = " [[${link}|${title}]]"
  • HTML= "<a href='${link}'>${title}</a>"

The user would then select this named style when they copy a link.

Users like me are likely to want to frequently use all the different link styles at different times and so be able to quickly choose the link format when I copy a link (not have to navigate inside the extension options to re-select a link style every time). So if you added this I'd make the link styles names appear on the link menu that appears when you perform the link copy. They could appear be a "checked" menu option that does not close the menu.

So your menu might be ...

  • Current Tab
  • All Tabs
  • Selected Tabs
  • ---- Divider -----
  • Markdown
  • Dokuwiki
  • HTML

The options can be hidden if only one style (Markdown) is defined.

@yorkxin
Copy link
Owner Author

yorkxin commented Jun 24, 2016

@tohagan Thank you for your suggestion. In fact I sometimes also have need to copy links in non-Markdown format e.g. RTF, in order to paste to rich text editors like Dropbox Paper. I think the UI you proposed is simple and easy to understand. I will consider working on this feature :)

@yorkxin yorkxin self-assigned this Jun 24, 2016
@tohagan
Copy link

tohagan commented Jun 30, 2016

Thanks very much 👍 I think it will be a really valuable addition and hopefully not that hard to code

@sebastienbarre
Copy link

This looks great. At this point you are one of the only Copy Link extensions that is multiprocess. Ideally I would love for it to do everything the CoLT extension used to do (especially the "Copy Link Text" menu item, which copies a hyperlink's associated text to the clipboard).

@keisuke-nakata
Copy link

Recent Firefox update destroyed almost all plugins which provide "copy link as something", except for this plugin.
Supporting "copy link as HTML, or any format you specify" feature is very helpful for Firefox users.

@sgourichon
Copy link

Another overnight-obsoleted extension is Easy Copy.

Easy Copy has been on my shortlist of best extensions for years

It has a simple yet very flexible configuration system which basically allows you to generated whatever markup language you need, while supporting many uses cases. Examples:

  • don't select anything, copy -> becomes link to the page, with page title as link text
  • select any snippet of text in the page, copy -> becomes link to the page, with the text you selected as link text <<== the one I use most
  • don't select anything, right-click on link, copy -> same result as precisely selecting the link and copying it, just much easier
  • the simple and powerful configuration options allow to provide the behavior of CoLT.
  • copy all tabs as links (all this, whatever markup language)

Screenshots

use

configuration

Conclusion

  • Praise "copy-as-markdown" for being compatible with Firefox 57+!
  • I guess it can technically be extended to support all this. If would be soo great!

@jmfayard
Copy link

Hello @chitsaou
Just wanted to say that i like your plugin a lot.
Do you have plans to implement this feature?
That would make it instantly 2 times better.

Please add as well Asciidotor format: http://example.com[Title of the webpage]

@bhrutledge
Copy link

Thanks for this extension! I frequently use it to copy a bunch of tabs into my Markdown notes. However, I prefer - over * for my list bullets. Can that be added as an option?

Expected Behavior

Set a preference for list bullet to -, then "All tabs link" or "Selected tabs link" would copy:

- [chitsaou/copy-as-markdown: Copying Link, Image and Tab(s) as Markdown Much Easier.](https://github.com/chitsaou/copy-as-markdown)
- [Copy as Markdown - Chrome Web Store](https://chrome.google.com/webstore/detail/copy-as-markdown/fkeaekngjflipcockcnpobkpbbfbhmdn?hl=en)
- [Copy as Markdown – Get this Extension for 🦊 Firefox (en-US)](https://addons.mozilla.org/en-US/firefox/addon/copy-as-markdown/)

Actual Behavior

* [chitsaou/copy-as-markdown: Copying Link, Image and Tab(s) as Markdown Much Easier.](https://github.com/chitsaou/copy-as-markdown)
* [Copy as Markdown - Chrome Web Store](https://chrome.google.com/webstore/detail/copy-as-markdown/fkeaekngjflipcockcnpobkpbbfbhmdn?hl=en)
* [Copy as Markdown – Get this Extension for 🦊 Firefox (en-US)](https://addons.mozilla.org/en-US/firefox/addon/copy-as-markdown/)

@roryokane
Copy link

roryokane commented Sep 26, 2021

Like @bhrutledge, I would prefer my copied text use - as the list bullet instead of *. I don’t have time right now to try to edit this extension, but here are some notes towards developing that feature.

This is the function that writes * as the list bullet:

export function list(theList) {
return theList.map((item) => `* ${item}`).join('\n');
}

The simplest edit to that file that would support customizing the list bullet and nothing else might be this:

export function list(theList) {
  const bulletCharacter = userOptions.bulletCharacter || '*';
  return theList.map((item) => `${bulletCharacter} ${item}`).join('\n');
}

Then src/lib/options-manager.js would need to be edited to support storing a bulletCharacter option, and src/ui/options.js and src/ui/options.html would have to be edited to support the user editing that option. The editing interface would be either radio buttons or a pop-up menu. The buttons or menu would have two options: * and -.

The template-based customization feature described in tohagan’s comment sounds more useful than just being able to customize the bullet character, and it would solve my problem. However, it sounds more complicated to implement.

@roryokane
Copy link

As an alternative to adding an bullet customization option as I described above, we could change the hard-coded bullet character from * to - by editing the list function. Do any current users of the extension (including its author) actively prefer * over -, or was * an arbitrary choice? I prefer - for various reasons, including that it matches Prettier’s Markdown formatting.

@yorkxin
Copy link
Owner Author

yorkxin commented Apr 23, 2024

Related: #98

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

No branches or pull requests

10 participants