Format Link

#4.5 / 12 rate

Format Link

1,000 users

2020-05-30

hnakamur

Extension Information

5 star
73%
4 star
0%
3 star
13%
2 star
13%
1 star
0%

Supported Languages

Permissions

Description

Format a link and copy it to the clipboard.

## Why do I need it?
To format the link of the active tab instantly to use in Markdown, reST, HTML, Text, Textile or other formats.

## How to use
You can use keyboard shortcuts, context menus, or the toolbar button of Format Link extension
to copy a link in the specified format. Before doing that, you can optionally select some text
which may or may not contain a link.

### keyboard shortcut
The keyboard shortcut for "Copy a link in the default format" is shortcut for clicking the
toolbar button. The link is copied in the default format and the popup is shown under
the toolbar button.

Also there are shortcuts for copying in the link in the corresponding format regardless of
the default format.

You can change shortcuts at chrome://extensions/shortcuts

### context menu
Open the context menu and select the "Format Link as XXX" menu item.
"XXX" in the menu item label changes as you change the default format by clicking the "Set as default" button in the popup page for the toolbar button.

If you check the "Create submenus" in the options page and save the options,
submenus for each format are created under the "Format Link" context menu group.

### toolbar button
When you press the toolbar button of "Format Link", the link is copied in the default format,
the popup page becomes open, and the formatted text is shown in the text area.

If you want to copy the link in different format, you can press one of the radio buttons.

Also if you want to change the default format, you can press the "Set as default" button.

## Flexible settings
You can modify formats in [Tools] -> [Extensions] -> Clik "Options" link in "Format Link" Extension.
In format settings, you can use the mini template language.

* {{variable}}
* variable = title / url / pageUrl / text
* The value of variable `title` is the HTML page title.
* The value of variable `text` is the selected text if some text is selected,
the link text if you open the context menu over a link (see KNOWN LIMITATION below for link text),
or the page URL if no text is selected and you open the context menu not over a link.
* The value of the variable `url` is the link if you open the context menu over a link,
the first link if selection contains a link, or the HTML page URL otherwise.
* The value of the variable `pageUrl` is always the page URL.
* No spaces are allowed between variable name and braces.
* {{variable.s("foo","bar")}}
* Which means `variable.replace(new RegExp("foo", 'g'), "bar")`
* You can use escape character \ in strings.
* You must escape the first argument for string and regexp.
For example, `.s("\\[","\\[")` means replacing `\[` with `\\[`
* You can chain multiple .s("foo","bar")
* You can use the escape character \ in strings. For example, you need to escape `\` with `\` like `\\`,
and also you need to escape `{` with `\` like `\{`. See the LaTeX example below.
* Other characters are treated as literal strings.

Here are examples:

* Markdown

```
[{{text.s("\\[","\\[").s("\\]","\\]")}}]({{url.s("\\(","%28").s("\\)","%29")}})
```

* reST

```
{{text}} <{{url}}>`_
```

* HTML

```
{{text.s("<","<")}}
```

* Text

```
{{text}}\n{{url}}
```

* Redmine Texitile

```
"{{title.s("\"",""").s("\\[","[")}}":{{url}}
```

* LaTeX

```
\\href\{{{url}}\}\{{{text}}\}
```

## Permissions required by this extension

* To use this extension, the following two permissions are required:
* "Read and change all your data on all websites"
* This permission is needed for this extension to run the ["content script"](https://developer.chrome.com/docs/extensions/develop/concepts/content-scripts?hl=en) into the content of pages you visit in order to get the page title, the selected text, the page URL, or the link URL.
* "Modify data you copy and paste"
* This permission is needed to copy a URL and a text to the clipboard.

For technical details, see the following pages:

* [Declare permissions](https://developer.chrome.com/docs/extensions/develop/concepts/declare-permissions?hl=en)
* ["content_scripts.matches"](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns?hl=en)
* This extension uses `""`.
* [Permissions](https://developer.chrome.com/docs/extensions/reference/permissions-list?hl=en)
* This extension requires the following permissions:
* "activeTab"
* "clipboardWrite"
* "contextMenus"
* "storage"

## License
MIT License.
Source codes are hosted at [Github](https://github.com/hnakamur/FormatLink-Chrome)

## KNOWN LIMITATIONS

* Due to security reason, you cannot copy the URL on some pages like the Chrome Extension Gallary.
* Chrome allow each extension to have at most 4 keyboard shortcuts. One shortcut is used for copying a link with the default format, and the rest of three are used for copying a link with the corresponding format 1 to format 3. So format 4 to format 9 does not have keyboard shortcut.

Reviews

Marcus Glynn
Marcus Glynn

Fantastic! The default options are really useful but the regex customizations are the jam in my my donut.

Ken William
Ken William

Fabulous - just what I was looking for. It would be great if you could also access the selected text variable (blank if nothing selected) and a current date variable :)

Григорий Врачёв
Григорий Врачёв

Хотелось бы чтобы из описания под роликами в ютубе можно было скопировать текст с полной, оригинальной ссылкой, без лишних хвостов. https://www.youtube.com/watch?v=AubAiHSHRgs&t=476s

Similar extensions

Copy Link
Copy Link

axmet180

Fix Copy Link Address
Fix Copy Link Address

Marcus Svensson

Title & URL
Title & URL

t.soorankim

Copy Link With Title
Copy Link With Title

Paul Cohn

Copy As Hyperlink
Copy As Hyperlink

Frederick Hewett (Cambridge, MA)

Copy URL with Title (plain text/markdown)
Copy URL with Title (plain text/markdown)

https://takashyx.com

Link With Context
Link With Context

mrjaeger00

Copy Real Url
Copy Real Url

Sourya Kakarla

Hyperlink from selected text
Hyperlink from selected text

TGSchmidt

Rich URL
Rich URL

Pavlo Ukhan

copy 2 clipboard with ease
copy 2 clipboard with ease

cage.chung

Tab Link Copier
Tab Link Copier

Volodya Shtenovych