Find equation that denotes straight line that intersects middle of chord that is expressed by another equation

$(x-2)^2 + (y + 1)^2 = 16$ is circle

$x – 2y – 3 = 0$ is equation that denotes chord of this circle

How do I find equation of straight line that intersects middle of this chord?

keyboard – MS OneNote beginning/end of line shortcuts on Mac

I am using OneNote on a Mac and the beginning of line and end of line shortcuts are Ctrl+A and Ctrl+E, respectively. I prefer the alternatives Fn+< and Fn+> instead, which work in other applications on Mac but not in OneNote for some reason. I tried adding them from System Preferences > Keyboard > Shortcuts > App Shortcuts, but looks like you cannot add a shortcut with a Fn button there. Any ideas on how to enable using Fn+< and Fn+> as the beginning of line and end of line shortcuts in OneNote on Mac?

Note: I am using a Mac 2019 with a touchbar that is controlled by the Fn key.

plugins – WordPress automatically removes line break

When writting a description for a Woocoomerce Product and inserting a line break with br or p Tag, WordPress automatically removes it. This is really annoying because on some points, i want to have a little line break.

I often found the solution to install TinyMCE. After that now WordPress doesnt removes the p Tag anymore but inserts a &nbsp inside of it and so the line break is way to big.

So i want a line break like a p Tag, because npsb produces way too much space between two sentence.

I also tried following solutions:

  1. add some attributes to the p Tag like <p data-x> </p>

  2. Wrap the p Tag with comments like

<!-- wp:html --> <p class="beer"></p> <!-- /wp:html -->
  1. Added some hooks in the functions.php like
add_shortcode("br", "br_tag"); function br_tag(){ return("<br/>"); }


remove_filter('the_content', 'wpautop'); remove_filter('the_excerpt', 'wpautop');


remove_filter( 'the_content', 'wpautop' ); remove_filter( 'the_excerpt', 'wpautop' ); function wpse_wpautop_nobr( $content ) { return wpautop( $content, false ); } add_filter( 'the_content', 'wpse_wpautop_nobr' ); add_filter( 'the_excerpt', 'wpse_wpautop_nobr' );
  1. I tried following solution but it doesnt work WordPress automatically adding “&nbsp;”?

The “best” solution i found was to NOT using the visual AND the text editor, but for me thats such a temporary one.


WordPress 5.6

Advanced Editor Tools (previously TinyMCE Advanced): 5.6

WooCommerce: 4.6.1 (but in my opinion, its not a WooCommerce problem)

Does anyone know a better solution or a reference for that problem?

dnd 5e – Do you need line of sight to cast spells on someone?

It Depends on the spell. And on your DM.

This is true for trying to cast a spell through any type of cover – whether it’s a brick wall, an illusory wall, a curtain of tissue paper, a glass wall, a swinging door. I’ll give you a couple of examples.

I am using roll20 compendium and DnD 5e Wikia for spell descriptions.

Magic Missle:

You create three glowing darts of magical force. Each dart hits a creature of your choice that you can see within range. A dart deals 1d4 + 1 force damage to its target. The darts all strike simultaneously, and you can direct them to hit one creature or several.

First of all, you must be able to see the target. This means that of the above options, you can target something only through the glass wall. The missles might do enough damage to break the wall, but as they are all traveling simultaneously, they will not penetrate. This depends on your DM.

Witch Bolt:

Make a ranged spell attack against that creature. On a hit, the target takes 1d12 lightning damage, and on your turn, you can use your action to deal 1d12 lightning damage to the target. The spell ends if you use your action to do anything else. The spell also ends if the target is ever outside the spell’s range or if it has total cover from you.

“Cover”, specifically, is physical. A glass wall therefore, is total cover, so you can cast the spell, but it would instantly end, which would mean you just wasted a spell slot. Same goes for the brick wall. You can cast it through an illusory wall, though if you don’t know that it is illusory, you probably shouldn’t risk it. Because the spell launches a bolt of force, and not anything physical, it will not swing the door open, and while closed, it is total cover. As for the thin curtain, this is up to your DM. If I were DM, I would say that the curtain is not total cover, but would make you roll at disadvantage to aim well at the target that you cannot see.

Detect Thoughts:

The description says you need to see the creature, so only the glass wall would work. Because you are not sending anything at the creature, and are only “looking through its mind”, the glass wall would not hinder you. Unless you have a mean DM.


You must be able to see the creature, and the creature must be able to hear you. The swinging door might work if it has a glass window, but otherwise, none of the options would work.


You can most definitely choose the point to be behind any wall, but your ability to aim well will be hindered. If you choose the point on your side of the wall, your DM might rule that creatures that cannot see the point do not fall asleep, even if they are within 20 feet.

For any spell: Some DMs might rule that there cannot be any cover at all. Some might rule that you must always see the target. Modifying the vaguer rules in 5e is one of the purposes of DMs.

As for the last question: If the spell says that the target must be seen, than a blindfolded wizard cannot cast it. Otherwise, it is up to your DM, but you can expect to aim much worse.

Framerate in command line usage of Compressor

I use Apple compressor from the command line to generate video clips from sequences of images. Here

it looks like the command line command allows for control of the framerate of the output movie, but I can’t get things to work. Does anyone know how to do this?

command line – Opening frequently used software using terminal with user assigned short names in Ubuntu 20.04

I recently installed Ubuntu and I want to make the desktop to a minimum. I am planning to remove the dock and use the terminal instead to open up the software I use. Some software I use have long names, So I am trying to assign new short names to them so I can use that in the terminal to open them. For example I am using stm32cube ide. I just want to open that software by just using something like following,


I want to do the same thing to couple of other software as well. How do I achieve this? So far I have seen a method that involves editing /bin folder and including a script.

command line – Cant Install tar.bz2 files

So, Ive been trying to install tar.bz2 files and Ive been following guides but for some reason every time I get to the ./configure step my terminal tells me. No such file or directory, and I tried a solution of doing chmod to give it permission but when i type chmod +x ./configure it says the same thing, Could somebody help me?

json – Command line utility for user data migration from to

Please make code review for command line utility for user data migration from to
Utility makes Get HTTP request downloads json-data, parses it and saves as CSV-file.

Can be found at github

// mubi2letterboxd is a simple command line utility for user data migration from MUBI to letterboxd.
// With the utility, you can create a .csv file suitable for manual import to Letterboxd.
// inspired by the reddit entry by jcunews1

package main

import (

type MovieRecord struct {
    Id        int    `json:"id"`
    Review    string `json:"body"`
    WatchedAt int64  `json:"updated_at"`
    Rating    int    `json:"overall"`
    Film      struct {
        Title     string `json:"title"`
        Year      int    `json:"year"`
        Directors ()struct {
            Name string `json:"name"`
        } `json:"directors"`
    } `json:"film"`

const (
    url                   = ""
    perPage               = "1000"
    letterboxdCsvFileName = "letterboxd.csv"

func main() {
    fmt.Print("Input MUBI userID and press Enter: ")
    var mubiUserId string
    if _, err := fmt.Scanf("%s", &mubiUserId); err == nil {
        if _, err := strconv.ParseUint(mubiUserId, 10, 64); err == nil {
            if err := process(mubiUserId); err != nil {
                fmt.Fprintf(os.Stderr, "Error occurred: %sn", err)
        } else {
            fmt.Fprintf(os.Stderr,"%q is not a valid UserIdn", mubiUserId)
    } else {
        fmt.Fprintf(os.Stderr, "Error reading UserID: %sn", err)

    fmt.Print("Press Enter to exit")

func process(mubiUserId string) error {

    var movieRecords ()MovieRecord
    var csvRows ()()string

    client := &http.Client{}
    req, err := http.NewRequest("GET", url, nil)
    if err != nil {
        return err
    query := req.URL.Query()
    query.Set("user_id", mubiUserId)
    query.Set("per_page", perPage)

    fmt.Printf("Data for UserID %s will be requested from MUBI servern", mubiUserId)
    for i := 1; ; i++ {
        fmt.Printf("Requesting for chunk #%d... ", i)
        query.Set("page", strconv.Itoa(i))
        req.URL.RawQuery = query.Encode()

        response, err := client.Do(req)
        if err != nil {
            return err

        if response.StatusCode != http.StatusOK {
            return errors.New(fmt.Sprintf("Server returned status code %d", response.StatusCode))

        jsonFile, err := ioutil.ReadAll(response.Body)
        if err != nil {
            return err

        if err := json.Unmarshal(jsonFile, &movieRecords); err != nil {
            return err
        fmt.Printf("downloaded %d recordsn", len(movieRecords))

        if len(movieRecords) == 0 {

        for _, item := range movieRecords {
            csvRows = append(csvRows, generateCsvRow(item))

    if len(csvRows) == 0 {
        fmt.Printf("nNo records found at MUBI server for UserID %sn", mubiUserId)
        return nil

    outFile, err := os.Create(letterboxdCsvFileName)
    if err != nil {
        return err
    defer func() {
        err := outFile.Close()
        if err != nil {

    csvwriter := csv.NewWriter(outFile)
    defer csvwriter.Flush()
    if err := csvwriter.Write(()string{"tmdbID", "Title", "Year", "Directors", "Rating", "WatchedDate", "Review"}); err != nil {
        return err
    if err := csvwriter.WriteAll(csvRows); err != nil {
        return err

    absPath, err := filepath.Abs(outFile.Name())
    if err != nil {
        return err
    fmt.Printf("n%d records are saved to %qn", len(csvRows), absPath)

    return outFile.Sync()

func generateCsvRow(r MovieRecord) ()string {
    idOut := strconv.Itoa(r.Id)
    titleOut := r.Film.Title
    yearOut := strconv.Itoa(r.Film.Year)

    directors := make(()string, len(r.Film.Directors))
    for i, director := range r.Film.Directors {
        directors(i) = director.Name
    directorsOut := strings.Join(directors, ", ")

    ratingOut := strconv.Itoa(r.Rating)
    timeOut := time.Unix(r.WatchedAt, 0).Format("2006-01-02")
    reviewOut := r.Review

    return ()string{idOut, titleOut, yearOut, directorsOut, ratingOut, timeOut, reviewOut}

How to trigger "Get Info" for file using command line?

Similarly to running open "/Applications/", I would like to open the "Get Info" window of /Applications/ using command line.

pension plan on line

Ok here goes and apologies for any errors or misunderstandings, am 64 years old ex wife stole my pension, got locked down with the coronavirus then got made redundant a week before xmas. I have little or no marketing experience previously a call handler for insurance company.
limited social circle and don't do facebook.
Am looking to build a website using word press part news part forum. similar websites that i have looked at seem to hold out a begging bowl with a donations via paypall…

pension plan on line