适用于Ubuntu的Mac OS X Terminal克隆


18

我想为Ubuntu Terminal设置Max OS X Terminal主题。我真的很喜欢字体和颜色。这是Mac Terminal的外观:

图片来源

我想在Ubuntu终端中看到的东西很少:

  • 我想username@desktop:~/Dropbox$用以下格式的用户名和计算机名替换:desktop:Dropbox username$

  • 我想更改终端字体,使其在Mac终端中看起来像。

  • 我想将配色方案更改为类似于Mac终端的配色方案。

这可能吗?怎么样?


请注意,我不想更改Ubuntu主题。我使用带有默认主题的Unity,但是我只想更改终端设置,因为它是我使用最多的应用程序。


你有答案了吗?
Sukupa91 2013年

1
@ Sushantp606我添加它:askubuntu.com/a/387520/148451
尼卡比曹

1
你为什么想做这个?ubuntu中的终端是mac终端的10倍。安装终结器
Stevie G

@StevieG我只是喜欢Mac终端的外观,但是目前我正在使用Terminal flat theme。我不喜欢终结者,Gnome Terminal + tmux一起做得很好。:)
尼卡比曹

您可能不相信这一点,但是我已经从Ubuntu 18.04转移到了MacOS,并且想念我的Ubuntu终端。我实际上是在网上搜索,以使我的MacOS终端看起来像Ubuntu 1。
Omar Tariq

Answers:


25

更改提示样式

要更改提示格式,请在~/.bashrc文件中添加以下行:

### Prompt style
export PS1="\033[0;33m\h:\W \u\$ \e[m"

现在终端看起来像这样:

终端字体

Intall Monaco字体。您可以在终端中运行此命令:

curl -kL https://raw.githubusercontent.com/cstrap/monaco-font/master/install-font-ubuntu.sh | bash

警告:您的浏览器可能与此字体有关。这在这里讨论。

然后将终端字体设置为使用Monacao:转到Edit -> Profile Preferences并更改字体:

配色方案

将以下内容保存到XML文件中:

<gconfentryfile>
  <entrylist base="/apps/gnome-terminal">
    <entry>
      <key>global/active_encodings</key>
      <schema_key>/schemas/apps/gnome-terminal/global/active_encodings</schema_key>
      <value>
        <list type="string">
            <value>
              <string>UTF-8</string>
            </value>
            <value>
              <string>current</string>
            </value>
        </list>
      </value>
    </entry>
    <entry>
      <key>global/confirm_window_close</key>
      <schema_key>/schemas/apps/gnome-terminal/global/confirm_window_close</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>global/default_profile</key>
      <schema_key>/schemas/apps/gnome-terminal/global/default_profile</schema_key>
      <value>
        <string>Default</string>
      </value>
    </entry>
    <entry>
      <key>global/profile_list</key>
      <schema_key>/schemas/apps/gnome-terminal/global/profile_list</schema_key>
      <value>
        <list type="string">
            <value>
              <string>Default</string>
            </value>
        </list>
      </value>
    </entry>
    <entry>
      <key>global/use_menu_accelerators</key>
      <schema_key>/schemas/apps/gnome-terminal/global/use_menu_accelerators</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>global/use_mnemonics</key>
      <schema_key>/schemas/apps/gnome-terminal/global/use_mnemonics</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>keybindings/close_tab</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/close_tab</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;w</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/close_window</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/close_window</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;q</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/copy</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/copy</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;c</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/detach_tab</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/detach_tab</schema_key>
    </entry>
    <entry>
      <key>keybindings/full_screen</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/full_screen</schema_key>
      <value>
        <string>F11</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/help</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/help</schema_key>
      <value>
        <string>F1</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/move_tab_left</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/move_tab_left</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;Page_Up</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/move_tab_right</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/move_tab_right</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;Page_Down</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/new_profile</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/new_profile</schema_key>
    </entry>
    <entry>
      <key>keybindings/new_tab</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/new_tab</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;t</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/new_window</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/new_window</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;n</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/next_tab</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/next_tab</schema_key>
      <value>
        <string>&lt;Control&gt;Page_Down</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/paste</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/paste</schema_key>
      <value>
        <string>&lt;Ctrl&gt;&lt;Shift&gt;v</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/prev_tab</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/prev_tab</schema_key>
      <value>
        <string>&lt;Control&gt;Page_Up</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/reset</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/reset</schema_key>
    </entry>
    <entry>
      <key>keybindings/reset_and_clear</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/reset_and_clear</schema_key>
    </entry>
    <entry>
      <key>keybindings/save_contents</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/save_contents</schema_key>
      <value>
        <string>disabled</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/set_terminal_title</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/set_terminal_title</schema_key>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_1</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_1</schema_key>
      <value>
        <string>&lt;Alt&gt;1</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_10</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_10</schema_key>
      <value>
        <string>&lt;Alt&gt;0</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_11</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_11</schema_key>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_12</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_12</schema_key>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_2</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_2</schema_key>
      <value>
        <string>&lt;Alt&gt;2</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_3</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_3</schema_key>
      <value>
        <string>&lt;Alt&gt;3</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_4</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_4</schema_key>
      <value>
        <string>&lt;Alt&gt;4</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_5</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_5</schema_key>
      <value>
        <string>&lt;Alt&gt;5</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_6</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_6</schema_key>
      <value>
        <string>&lt;Alt&gt;6</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_7</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_7</schema_key>
      <value>
        <string>&lt;Alt&gt;7</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_8</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_8</schema_key>
      <value>
        <string>&lt;Alt&gt;8</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/switch_to_tab_9</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_9</schema_key>
      <value>
        <string>&lt;Alt&gt;9</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/toggle_menubar</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/toggle_menubar</schema_key>
    </entry>
    <entry>
      <key>keybindings/zoom_in</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/zoom_in</schema_key>
      <value>
        <string>&lt;Ctrl&gt;plus</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/zoom_normal</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/zoom_normal</schema_key>
      <value>
        <string>&lt;Ctrl&gt;0</string>
      </value>
    </entry>
    <entry>
      <key>keybindings/zoom_out</key>
      <schema_key>/schemas/apps/gnome-terminal/keybindings/zoom_out</schema_key>
      <value>
        <string>&lt;Ctrl&gt;minus</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/allow_bold</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/allow_bold</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/alternate_screen_scroll</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/alternate_screen_scroll</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/background_color</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/background_color</schema_key>
      <value>
        <string>#0D0D19192626</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/background_darkness</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/background_darkness</schema_key>
      <value>
        <float>0.5</float>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/background_image</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/background_image</schema_key>
      <value>
        <string></string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/background_type</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/background_type</schema_key>
      <value>
        <string>solid</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/backspace_binding</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/backspace_binding</schema_key>
      <value>
        <string>ascii-del</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/bold_color</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/bold_color</schema_key>
      <value>
        <string>#000000000000</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/bold_color_same_as_fg</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/bold_color_same_as_fg</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/cursor_blink_mode</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/cursor_blink_mode</schema_key>
      <value>
        <string>system</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/cursor_shape</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/cursor_shape</schema_key>
      <value>
        <string>block</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/custom_command</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/custom_command</schema_key>
      <value>
        <string></string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/default_show_menubar</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/default_show_menubar</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/default_size_columns</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/default_size_columns</schema_key>
      <value>
        <int>80</int>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/default_size_rows</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/default_size_rows</schema_key>
      <value>
        <int>24</int>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/delete_binding</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/delete_binding</schema_key>
      <value>
        <string>escape-sequence</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/encoding</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/encoding</schema_key>
      <value>
        <string>current</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/exit_action</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/exit_action</schema_key>
      <value>
        <string>close</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/font</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/font</schema_key>
      <value>
        <string>Monaco Bold 10</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/foreground_color</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/foreground_color</schema_key>
      <value>
        <string>#D3D1D7D7CFCF</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/icon</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/icon</schema_key>
      <value>
        <string></string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/login_shell</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/login_shell</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/palette</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/palette</schema_key>
      <value>
        <string>#000000000000:#F5F579780000:#7373D2D11615:#D554C1D77F49:#40DAC851F332:#CECE5C5B0000:#C1C07D7C1110:#7373D2D11615:#262626262626:#EDEDD4D40000:#7373D2D11615:#EFEF29292929:#0000ABAAFFFF:#BAB99F9F0000:#E9E8B9B86E6E:#ADAD7F7FA8A7</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scroll_background</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scroll_background</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scroll_on_keystroke</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scroll_on_keystroke</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scroll_on_output</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scroll_on_output</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scrollback_lines</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scrollback_lines</schema_key>
      <value>
        <int>512</int>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scrollback_unlimited</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scrollback_unlimited</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/scrollbar_position</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/scrollbar_position</schema_key>
      <value>
        <string>right</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/silent_bell</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/silent_bell</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/title</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/title</schema_key>
      <value>
        <string>Terminal</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/title_mode</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/title_mode</schema_key>
      <value>
        <string>replace</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/update_records</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/update_records</schema_key>
      <value>
        <bool>true</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/use_custom_command</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/use_custom_command</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/use_custom_default_size</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/use_custom_default_size</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/use_system_font</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/use_system_font</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/use_theme_background</key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/use_theme_colors</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/use_theme_colors</schema_key>
      <value>
        <bool>false</bool>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/visible_name</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/visible_name</schema_key>
      <value>
        <string>Default</string>
      </value>
    </entry>
    <entry>
      <key>profiles/Default/word_chars</key>
      <schema_key>/schemas/apps/gnome-terminal/profiles/Default/word_chars</schema_key>
      <value>
        <string>-A-Za-z0-9,./?%&amp;#:_=+@~</string>
      </value>
    </entry>
  </entrylist>
</gconfentryfile>

然后运行以下命令导入配色方案:

gconftool-2 --load terminal-color-scheme.xml

...其中terminal-color-scheme.xml是包含上述内容的XML文件的名称。

之后,您的终端将如下所示:


@lonica,您知道有什么方法可以使终端在我们做错事时稍微晃动或闪烁。例如,在导航到目录时,如果我们已经到达目录的末尾并且仍然按Tab键。
Soumitri Pattnaik

@SoumitriPattnaik我认为这与您使用的终端仿真器确实有关。在我的Mac机器上,我禁用了可视铃。我没有测试这一点,但我觉得这是你所需要的:askubuntu.com/a/620053/148451
尼卡比曹

在哪里保存terminal-color-scheme.xml文件
Pankaj Gautam,

@PankajGautam您可以将其保存在任何地方。
尼卡比曹

@lonica我正确地执行了所有步骤,保持文件名相同,但出现以下错误
Pankaj Gautam

2

我们大多数人使用shell提示。默认情况下,大多数Linux发行版显示主机名和当前工作目录。您可以轻松地自定义提示以显示对您重要的信息。提示是通过特殊的shell变量进行控制的。

要显示当前的提示设置,请使用-

echo $PS1

输出将如下所示,如果您之前没有玩过它,您的输出将是相同的-

\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$

修改computername@usernameUsername 使用-

PS1="User name : "

使此更改永久使用edit /.bashrc by-

vi $HOME/.bashrc

并添加行-

export PS1="\e[0;31m[\u@\h \W]\$ \e[m"

如果您想添加其他内容,例如日期和所有提示,请告诉我,我将添加其他信息。

您的第二个问题是要更改字体,对于从Ubuntu软件中心或通过终端安装的unity tweak工具-

sudo apt-get install unity-tweak-tool

然后根据您的喜好更改字体和大小。

第三,我不知道将ubuntu的配色方案更改为MAC,因为我不是MAC迷,但是是的,您可以按照以下说明更改提示色-

要设置绿色提示,请键入以下命令:

$ export PS1="\e[0;32m[\u@\h \W]\$ \e[m "

从下表中根据需要更改颜色代码。

颜色代码

如果您要更改终端的完整字体颜色,请转到终端-编辑-首选项,并将cutom字体颜色用作-

终端偏好

这就是我所知道的,我不知道如何更改问题中显示的模式。

额外建议-要使它看起来像Mac,请使用http://www.noobslab.com/2013/10/mac-os-x-mbuntu-1310-pack-is-ready.html

希望对您有所帮助。


1

对于提示(显示为桌面的部分:Dropbox username $),请参阅Linux文档项目中的此文档:http : //www.tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html它描述了如何设置PS1以及如何为提示设置颜色(如果需要的话)

字体,您需要找出mac osx终端使用的字体并将其安装(如果尚未在Ubuntu中安装),然后可以使用终端中的首选项进行设置。

对于文件的颜色,您将需要使用dir_colors。这是手册页的链接:http : //man7.org/linux/man-pages/man5/dir_colors.5.html

您是否看到过有关Ubuntu的Mac主题的信息? http://www.noobslab.com/2013/10/mac-os-x-mbuntu-1310-pack-is-ready.html

是的,所有这些都可以完成,但是您需要做一些配置。

您可能还希望习惯于使用自定义的.bashrc。这是一个很好的教程:http : //news.softpedia.com/news/How-to-Customize-the-Shell-Prompt-40033.shtml

与所有内容一样,请保留原始文件的备份,以防万一。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.