Giter VIP home page Giter VIP logo

gpt2markdown's Introduction

GPT2Markdown

Are you manually copying your ChatGPT conversations to your notes, Notion etc?

Not anymore! This is a easy-to-use chrome extension that allows for the exporting of ChatGPT conversations to Markdown files. Save your chats in 1 click!

Note⚠️: there may be cases where you need to reload the page again for it to appear

Demo

SSMDGPT2.mp4

Installation

This project has received too many requests, please try again later. Chrome Web Store

Download from Web Stores

Chrome

Manual installation

Chrome & Microsoft Edge

  1. Download the code as a zip file here.
  2. Unzip the file.
  3. Open chrome://extensions in Chrome / edge://extensions in Microsoft Edge.
  4. Enable developer mode (top right corner).
  5. Click on Load unpacked and select the unzipped folder.
  6. Go to ChatGPT and enjoy!

Contributing

Contributions are welcome! Please submit pull requests to the dev branch.


If you found this project interesting, please consider following me on twitter twitter and subscribing to my email newsletter on emerging technologies.

gpt2markdown's People

Contributors

juan7732 avatar ricobuilds avatar roybotbot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

gpt2markdown's Issues

Incorrect Chrome web store link in README.md

image

Currently links to: https://chrome.google.com/webstore/detail/webchatgpt/lpfemeioodjbpieminkklglpmhlngfcn

Should link to: https://chrome.google.com/webstore/detail/gpt2markdown/mlfimpibamecbdnofjnbkjomeieclnjl

The table is not in markdown format

Hi ,

Here is a table example I got with the extension,

<div class="markdown prose w-full break-words dark:prose-invert dark"><table><thead><tr><th>Name</th><th>Popular Topics</th></tr></thead><tbody><tr><td>WatchMojo</td><td>Pop culture, entertainment</td></tr><tr><td>TopTenz</td><td>Various</td></tr><tr><td>TheRichest</td><td>Wealth, luxury</td></tr><tr><td>Topsify</td><td>Music</td></tr><tr><td>Tops and Rankings</td><td>Various</td></tr><tr><td>Top Trending</td><td>Trending topics</td></tr><tr><td>Top5s</td><td>Various</td></tr><tr><td>Top 10 Archive</td><td>History, science</td></tr><tr><td>Top 10 Daily</td><td>Current events, pop culture</td></tr><tr><td>Top 10 Nerd</td><td>Geek, nerd culture</td></tr></tbody></table></div>

expected output is markdown table format:

| aaa | bbb |

The table content:

NamePopular Topics
WatchMojoPop culture, entertainment
TopTenzVarious
TheRichestWealth, luxury
TopsifyMusic
Tops and RankingsVarious
Top TrendingTrending topics
Top5sVarious
Top 10 ArchiveHistory, science
Top 10 DailyCurrent events, pop culture
Top 10 NerdGeek, nerd culture

Issue with ordered list in response: not included in Markdown

Thanks for this great extension!

I'm having an issue where an ordered (numbered) list isn't being included in the generated Markdown.

Here is a piece of DOM copied as HTML using Chrome Inspector taken from a conversation with ChatGPT which exhibits the issue:

<div class="markdown prose w-full break-words dark:prose-invert light"><p>When using a large language model like GPT-3, it's important to choose prompts that are specific enough to elicit a coherent response, but not so restrictive that they limit the model's creativity and ability to generate diverse and interesting content.</p><p>Here are some tips for creating prompts that are suitable for use with a large language model:</p><ol><li><p>Keep your prompts open-ended: Avoid prompts that are too specific or narrow in scope. Instead, use prompts that allow the model to explore a range of ideas and perspectives.</p></li><li><p>Provide context: Help the model understand the topic by providing relevant background information and context. This will help the model generate more coherent and relevant responses.</p></li><li><p>Avoid leading questions: Avoid prompts that suggest a particular answer or perspective. Instead, use prompts that encourage the model to think creatively and generate original content.</p></li><li><p>Use natural language: Use prompts that are written in natural language, rather than technical jargon or overly formal language. This will help the model generate more natural-sounding responses.</p></li><li><p>Experiment with different prompts: Try different prompts to see what works best for your needs. Some prompts may work better than others depending on the specific task or application.</p></li></ol></div>

(The <div> has at least one class which I believe was inserted by the Dark Reader extension which I'm using.)

The extension as downloaded from the Chrome Web Store only outputs the following Markdown:

**ChatGPT:**
When using a large language model like GPT-3, it's important to choose prompts that are specific enough to elicit a coherent response, but not so restrictive that they limit the model's creativity and ability to generate diverse and interesting content.
Here are some tips for creating prompts that are suitable for use with a large language model:


 --------

I.e. the ordered list following the first paragaph is missing entirely.

Button not rendered with recent UI update from Chatgpt.

Easy fix, just add "items-stretch" to the following line of code:

inputActionNode = document.querySelector(
	"div[class*='relative flex h-full flex-1 md:flex-col']"
);

becomes

inputActionNode = document.querySelector(
	"div[class*='relative flex h-full flex-1 items-stretch md:flex-col']"
);

Issues with codeblocks

This is a great extension and works really well. Just what I was looking for.

I did notice one issue that cause my codeblocks to be malformed. The [```python] needs to have a linebreak before it render properly. I was able to fix this with find/replace. Just add a linebreak before this tag, and it looks bueno...

Thanks,
Tony
Screenshot 2023-03-16 at 11 03 15
Screenshot 2023-03-16 at 11 03 36

Copying Code Snippets is a little rough, but still works

Input:
image

Output markdown:

**ChatGPT:** --------
**You:**
You're going to be an expert python programmer.

 --------
**ChatGPT:**
As an AI language model, I am already proficient in Python programming and can assist with a wide range of tasks related to Python. Please let me know how I can help!


 --------
**You:**
I want you to write a hello world program in Python

 --------
**ChatGPT:**
Certainly! Here is a simple "Hello, world!" program in Python:
<pre><span class="">python</span><button class="flex ml-auto gap-2"><svg stroke="currentColor" fill="none" stroke-width="2" viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" class="h-4 w-4" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect></svg>Copy code</button><code class="!whitespace-pre hljs language-python"><span class="hljs-built_in">print</span>(<span class="hljs-string">"Hello, world!"</span>)
</code></pre>This program will output the string "Hello, world!" to the console.


 --------

VScode Preview:
image

Expected output would probably be better to remove the extra html/css and use the built in ``` code formatting in markdown.
Probably remove the copy button remnant too.

Preserve proper formatting?

Great tool!

Issue: It doesn't seem to retain formatting. It looses bullet points, makes lists turn out as simple lines. The entire thing basically just comes out as a single paragraph.

Edit: Hm, it doesn't always happen. I'll investigate further to create a repro and reopen the issue (maybe I'm doing something wrong)...

handleLiveChat is not defined

Uncaught ReferenceError: handleLiveChat is not defined
    at HTMLButtonElement.handleClick (script.js:30:5)
script.js:30 Uncaught ReferenceError: handleLiveChat is not defined
    at HTMLButtonElement.handleClick (script.js:30:5)
handleClick @ script.js:30

Exporting code results in HTML escape characters

image

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.data.jpa.repository.support.JpaEntityInformation;
import org.springframework.data.jpa.repository.support.SimpleJpaRepository;
import org.springframework.transaction.annotation.Transactional;

import javax.persistence.EntityManager;
import javax.persistence.TypedQuery;
import java.util.concurrent.TimeUnit;

public class GenericRepositoryImpl&lt;T&gt; extends SimpleJpaRepository&lt;T, Long&gt; implements GenericRepository&lt;T&gt; {

    private final EntityManager entityManager;

    public GenericRepositoryImpl(JpaEntityInformation&lt;T, ?&gt; entityInformation, EntityManager entityManager) {
        super(entityInformation, entityManager);
        this.entityManager = entityManager;
    }

    @Override
    public Page&lt;T&gt; search(String searchQuery, Pageable pageable) {
        return search(searchQuery, null, pageable);
    }

As you may have noticed when we export the Markdown, the code has html escape characters. Also there is always an additional blank link at the start of the code

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.